我已经写出了所有代码。我不完全确定您是否需要查看它才能获得想法。
基本上我正在使用基本的:
$("#formToLoadPageInto").load("thePageToLoad.php").fadeIn("fast");
现在,一切都可以了,但是加载的页面有一个表单。它在必须使用该加载之前第一次工作(提交表单),但之后(当使用该代码重新加载时)重新加载的页面上的表单不再提交。
我读过,你不应该将类似的东西放在 $(document).ready(function(){
主体中,但它实际上一直处于主体之外。所以我真的不确定可能出了什么问题。
一切都是基于不刷新页面。到目前为止,我已经成功实现了这一点,但是这个问题(以及一些相关的问题)阻碍了我!希望有人能帮助我..
编辑:
也许这会有所帮助:
我有 2 个不同的 div - “发表评论”和“发表评论”。
帖子评论 div 有一个用于提交评论的表单。这是一个加载到 div 中的 php 页面。这很好用。提交表单时,它使用以下代码:
$("#newpost").validate({
debug: false,
submitHandler: function(form) {
// do other stuff for a valid form
$.post('postthought.php', $("#newpost").serialize(), function(data) {
$('#hideload').html(data);
});
}
});
运行之后,我尝试使用
重新加载发布的评论 div(其中包含一个 php 形式的表单,用于加载所有发布的评论以查看和删除)$("#formToLoadPageInto").load("thePageToLoad.php").fadeIn("fast");
如前所述。它可以工作并显示新内容,但我无法使用此页面上的表单来查看或删除评论。
希望这不会太令人困惑..
最佳答案
如果表单本身被替换,您需要重新应用表单提交的处理程序,或者使用委托(delegate)给未替换的元素(可能是文档本身)的处理程序。
$('#formToLoadPageInto').on('submit','form', function() {
... do submission...
$('#formToLoadPageInto').load('thePageToLoad.php').fadeIn('fast');
});
关于jquery - 如何使用 jquery/ajax 正确刷新包含表单的 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8954835/