使用按钮的Ajax调用单击表单不起作用
问题描述:
我尝试使用Ajax调用服务器,当我单击表单内的按钮时。但即使使用event.PreventDefault或返回false,它也不会使用Ajax。使用按钮的Ajax调用单击表单不起作用
可能是什么问题。这是我的HTML和jQuery代码
<form action="/Patient/Search" id="patient-search-form" method="post">
<input type="text" id="PatientName" />
<button class="btn blue-button" id="search-patients" type="submit">
<i class="icon-save icon-white"></i><span>Search</span>
</button>
</form>
<script type="text/javascript">
$(document).ready(function() {
$('#search-patients').submit(function (event) {
event.preventDefault();
SearchPatients();
return false;
});
});
</script>
答
你提交事件处理程序被分配到按钮,它应该是这样的形式:
<script type="text/javascript">
$(document).ready(function() {
$('#search-patients-form').submit(function (event) {
event.preventDefault();
SearchPatients();
return false;
});
});
</script>
或者你可以绑定到按钮单击事件,而不是:
<script type="text/javascript">
$(document).ready(function() {
$('#search-patients').click(function (event) {
event.preventDefault();
SearchPatients();
return false;
});
});
</script>
+0
它的作品完美。现在我正在使用点击 – Billa 2013-03-18 11:46:11
+0
这是一个很好的解决方案。如果你使用表单提交,你必须像这个解决方案一样使用form id'patient-search-form' – 2013-03-18 11:58:01
答
$(document).ready(function() {
$('#search-patients').click(function (event) {
event.preventDefault();
SearchPatients();
return false;
});
});
你给按钮的ID there.We需要给表单ID。
你确定在SearchPatients()函数中没有问题? – 2013-03-18 11:41:01