我在我的web项目中使用PJAX,当我提交我的表单时,PJAX实际上正在处理它,相关的东西进来并在PJAX容器中替换,但在此默认操作发生之后 – 这种形式正在传统中提交方式和整个页面再次加载
表格HTML在这里
<form class="form_class"><input type="text" name="search" id="search_query" class="basic_input" value="" /><button onclick="this.form.submit();" >Find</button></form>
这是我调用表单的pjax代码
$(document).on('submit', '.form_class', function(event) {
$.pjax.submit(event, '#container_id');
});
它工作 – 但默认表单提交也发生了,我想要唯一的PJAX方式,我不希望完整的页面重新加载(传统的提交)
解决方法:
只需使用事件对象取消默认提交行为:
$(document).on('submit', '.form_class', function(event) {
event.preventDefault(); // stop default submit behavior
$.pjax.submit(event, '#container_id');
});
如果那不起作用那么也许你太迟了取消它.尝试:
$(document.body).on('submit', '.form_class', function(event) {
event.preventDefault(); // stop default submit behavior when it bubbles to <body>
$.pjax.submit(event, '#container_id');
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。