Javascript 来自Ajax请求的Jquery Ajax表单
我做了一个jQuery表单(form1),它通过ajax在页面中引入了另一个表单(form2)。 现在我想通过ajax提交form2数据 但每当我点击按钮,它就会提交整个页面。我是说整个页面都重新加载了Javascript 来自Ajax请求的Jquery Ajax表单,javascript,jquery,ajax,Javascript,Jquery,Ajax,我做了一个jQuery表单(form1),它通过ajax在页面中引入了另一个表单(form2)。 现在我想通过ajax提交form2数据 但每当我点击按钮,它就会提交整个页面。我是说整个页面都重新加载了 $(document).ready(function() { $("#form2").submit(function() { $(this).ajaxSubmit({ beforeSubmit: function(b
$(document).ready(function() {
$("#form2").submit(function() {
$(this).ajaxSubmit({
beforeSubmit: function(before) {
$('.loading_result').html('Loading...');
},
success: function(dd) {
$('.loading_result').html(dd);
}
});
return false;
});
});
父页面中的所有JavaScript代码。我在ajax页面中没有任何JavaScript代码
//
page.php
*本页有一张表格(表格1)。
*所有jQuery函数都在page.php中
提交表单1时,它会从page2.php/中带来数据,效果良好。
**php给出了表单2
现在,当我提交from2时(在ajax请求之后也在page.php中),它不会触发page.php中的jquery函数,这是因为表单是在传统意义上提交的。这是提交事件的默认操作。您需要取消显示以下内容:
$("#form2").submit(function(evt) {
evt.preventDefault(); //<-- prevent the event's default action
//code here...
$(“#表单2”).submit(函数(evt){
evt.preventDefault();//我通常只在表单按钮中包含一个“onclick”事件,而不是在$(document.ready
)上绑定表单提交:
<button type='submit' onclick='MyAjaxFunction();return false;'>Submit</button>
提交
onclick的return false;
部分将阻止表单提交。否。它仍然会加载pageWell,这无疑是抑制提交事件的方法-。可能您的目标选择错误,或者没有完全实现我发布的代码。请参阅JS Fiddle.$(“#form2”).submit(函数(){这一行在document.ready==>页面加载时,没有id为“form2”的表单。这可能是个问题吗?我唯一能想到的是(没有看到您的情况)您$(“#form2”)。提交(…
行在表单2实际插入页面之前运行。这意味着事件回调永远不会触发,因为在设置时,元素(#form2
)不在DOM中。如果是这种情况,则需要在将事件插入DOM时绑定该事件,而不是在DOM就绪时绑定该事件。我无法在没有看到小提琴的情况下再提供任何建议。但是return false
的作用基本相同(阻止提交)说到表单提交。使用此方法,如何获取表单的post数据?谢谢。我使用了$.ajax和数据序列化:)