У меня есть форма, в которой кнопка вызывает функцию onclick
:
<form>
<input type="text" id="start" name="start">
<input type="button" onclick="calcRoute();" value="Go">
</form>
function calcRoute() {
var start = document.getElementById('start').value;
var end = "My Address in Rome";
var request = {
origin:start,
destination:end,
travelMode: google.maps.DirectionsTravelMode.TRANSIT
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
Он корректно работает в любом браузере, если нажать кнопку Перейти (<input type="button">
). Этого не произойдет, если я заполню <input type="text">
и нажму ENTER на клавиатуре (или, например, нажму кнопку Go на клавиатуре iOS). Итак: это работает, если я нажимаю input type="button"
, а не если я нажимаю ENTER с клавиатуры. Как я могу заставить его работать таким же образом?
РЕДАКТИРОВАТЬ: Пожалуйста, не jQuery или другой фреймворк. :)
<input type="submit">
, все равно не сработает. Что вы подразумеваете под встроенным js? :) - person MultiformeIngegno   schedule 28.04.2013onclick="calcRoute();"
. Это осуждается по тем же причинам, что и встроенные стили. Мы избегаем встроенного javascript, связывая обработчики событий в нашем окне загрузки или, если используем jquery, документ готов. Но мы должны быть здесь, чтобы ответить на ваш вопрос, а не критиковать стиль вашего кода. - person Stoutie   schedule 08.08.2014