Tôi có một trang jsp như sau:html chênh lệch trình dạng giữa click(), trình() và bằng tay nhấp chuột trong jquery
<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>
Khi tôi bằng tay bấm (tức là sử dụng một con chuột) vào nút "Go" , biểu mẫu được gửi sau khi hiển thị văn bản "hiện đang bắt đầu gửi"; khi nhấp vào nút "TestClick", biểu mẫu được gửi thành công nhưng văn bản "hiện đang bắt đầu gửi" không xuất hiện; khi nhấp vào nút "TestSubmit", văn bản "now starting submit" xuất hiện, nhưng biểu mẫu sẽ không được gửi.
Trái với yêu cầu của tôi, các nút "TestClick" và "TestSubmit" không hoạt động như nút "Go" khi cả hai được nhấp. Theo hiểu biết của tôi, ba lần nhấp vào nút phải thực hiện tương tự, nghĩa là gửi biểu mẫu sau khi văn bản "hiện đang bắt đầu gửi" xuất hiện. Vì vậy, câu hỏi của tôi là, tại sao kết quả của ba lần nhấp nút là khác nhau?
Tôi đang sử dụng jquery 1.3.2
Đó là nghĩa vụ phải kích hoạt tất cả các cuộc gọi lại.Bạn đã thử chỉ với jquery mới nhất để xem nếu họ có thể cố định nó? – scragz
@scragz, không, tôi đã thử với 1.4.4. và nó hoạt động giống nhau. –