Ввод HTML-кода на javascript?

0

Я новичок в JavaScript, и я пытаюсь связать свою кнопку с внешней функцией в файле JavaScript на моем диске c :. Текущий код выглядит так:

<button type="button" id="btnPoint" style="width: 90px; height: 30px;" onClick="MapPoint()" >

Я хочу, чтобы это сделать, чтобы перейти к файлу JavaScript (src= "./_ JavaScript/Map.js) и запустить функцию MapPoint(). Это должно быть возможно?

Благодаря,

  • 0
    Возможно, начните с использования веб-сервера, затем изучите основы создания веб-сайтов.
Теги:
google-maps

6 ответов

1
Лучший ответ
<button type="button" id="btnPoint" style="width: 90px; height: 30px;" onClick="JavaScript:MapPoint()" >

Включите файл JavaScript с этим в заголовке

<script src="./_JavaScript/Map.js"></script>
  • 0
    В "JavaScript:MapPoint())" «JavaScript:» рассматривается как неиспользуемая метка. Я думаю, что вы перепутали внутренних слушателей с использованием псевдопротокола javascript в атрибуте href элементов A.
0

Сделайте, как сказал agressen, а затем добавьте событие на свою кнопку, попробуйте это

var bt = document.getElementById('btnPoint');
bt.addEventListener('click', function () { MapPoint();}, false);
0

Вам нужно включить внешний файл, содержащий эту функцию.

В html добавьте тег скрипта в файл javascript loc:

<script type="text/javascript" src="path/to/jsfile/js"></script>
0

У вас есть два основных маршрута:

  1. Вы можете открыть свой статический html файл, который использует относительные ссылки во всем мире, чтобы ссылаться на ваши дополнительные ресурсы. Таким образом, вы можете включить ваш javascript файл, используя <script src="./_JavaScript/Map.js"></script> если Map.js находится в папке _JavaScript вместе с вашим файлом HTML.
  2. Вы можете иметь веб-сервер, размещенный локально на вашем компьютере, для обслуживания статического и динамического содержимого с вашего компьютера. Хорошим местом для начала является использование стека приложений WAMP.
0

Самый простой/простой способ - сделать следующее:

  1. Запустите свой HTML через веб-сервер (Apache on * nix или IIS в Windows)
  2. Поместите файл HTML и javascript в ту же папку
  3. Измените файл HTML, чтобы включить строку внизу: <script src="Map.js"></script>
  4. Убедитесь, что MapPoint() правильно определен в файле Map.js
0

То, что у вас есть, будет действовать просто отлично, пока у вас есть функция "MapPoint", определенная на вашей странице.

Ваша функция должна быть доступна для этой страницы, которая включена в страницу или связана с внешним файлом. Он может размещаться в Интернете где-то или только по отношению к URL этой страницы... но он не должен быть связан с вашим фактическим C:\ (по соображениям безопасности... и когда вы публикуете эту страницу, это не сработает),

Пуристы будут предлагать несколько изменений в вашем коде.

  1. Если вы используете атрибут onclick, большинство разработчиков в наши дни используют все нижние регистры
  2. Обычно функции начинаются с строчной буквы по соглашению... например, mapPoint();
  3. Для чистоты вы, вероятно, захотите поместить эти функции в отдельный файл, который может быть кэширован браузером конечных пользователей (с использованием заголовка expires)
  4. Если вы закончите использовать jQuery (или что-то подобное), вы можете сделать код немного чистым (хотя и немного абстрактным), не используя атрибут onclick, а скорее привязывая событие к элементу через селектор jQuery

Чтобы включить вашу функцию во внешний файл, просто добавьте тег, подобный этому, на свою страницу.

<script src="./JavaScript/Map.js"></script>

По старым причинам требуется закрыть тег закрытия. Поместите тег внутри тега <head>...</head> если вы не знаете, куда его поместить, но если вы знаете, что это не понадобится, пока после загрузки страницы не будет лучшего места, чтобы положить его прямо перед закрывающий </body>.

Если вы в конечном итоге используете jQuery, есть несколько способов связать это событие, но проще всего использовать метод jQuery click:

$('#btnPoint').click(function(){
  //do what you want here... or even call another method
  mapPoint();
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню