У меня есть следующая страница jsp:
<script type="text/javascript" src="/mywebapp/js/jquery.js"></script>
<script type="text/javascript">
$( function() {
$('#testform').submit(function(){
alert('now starting submit');
return true;
});
$("#test1btn").click(function(){
$('#testform #submit').click();
});
$("#test2btn").click(function(){
$('#testform').submit();
});
});
</script>
<form id="testform" method="post" action="backend/search_test.do">
<input id="reqpagenr" name="reqpagenr" size="10">
<input type="button" id="test1btn" value="TestClick"/>
<input type="button" id="test2btn" value="TestSubmit"/>
<input id="submit" type="submit" value="Go">
</form>
Когда я щелкаю вручную (т. е. с помощью мыши ) кнопку «Перейти», форма отправляется после отображения текста «сейчас начинается отправка»; при нажатии кнопки «TestClick» форма успешно отправлена, но текст «сейчас начинается отправка» не появляется; при нажатии кнопка "TestSubmit" появляется текст "теперь начало отправки", но форма вообще не отправлена.
Вопреки моим ожиданиям, кнопки "TestClick" и "TestSubmit" не работают как кнопка "Go" выполняется, когда нажимаются оба. Насколько я понимаю, нажатие трех кнопок должно делать то же самое, то есть отправлять форму после текста "теперь появляется начало отправки ". У меня вопрос, почему результаты трех нажатий кнопок разные?
Я использую jquery 1.3.2