Я знаю, что это вопрос, который часто встречается во многих сообщениях, но даже после чтения десятков ответов я до сих пор не могу понять, что не так в моем коде.Запретить событие по умолчанию - jquery
Цель состоит в том, чтобы предотвратить отправку по умолчанию и получение данных ответа в ответном div. Фактически этот код отправляет меня непосредственно на страницу geocoder.php.
Спасибо большое,
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
/* attach a submit handler to the form */
$("geostring").submit(function(event) {
/* stop form from submitting normally */
event.preventDefault();
/* get some values from elements on the page: */
var $form = $(this),
term = $form.find('input[name="geo"]').val(),
url = $form.attr('action');
/* Send the data using post */
var posting = $.post(url, { s: term });
/* Put the results in a div */
posting.done(function(data) {
var content = $(data).find('#content');
$("#answer").empty().append(content);
});
});
</script>
<form action="http://winefy.alwaysdata.net/geocoder.php" method="POST" id="geostring">
<input type=text name="geo" placeholder="Address..." />
<input type="submit" value="Geocode" />
<div id="answer"></div>
</form>
@Crowder Isin't скрипт выполняется только после загрузки всех HTML-элементов с помощью браузера? –
@Vivek: Нет, сценарий выполняется, как только встречается тег 'script'. –
большое спасибо за ваш ответ. Я только что внес изменения, но это не сработало ... Я использую этот код в представлении Joomla о пользовательском компоненте, что-то изменить? – justberare