jquery - 如何使用 jquery/ajax 正确刷新包含表单的 div?

标签 jquery ajax forms submit reload

我已经写出了所有代码。我不完全确定您是否需要查看它才能获得想法。

基本上我正在使用基本的:

$("#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/

相关文章:

javascript - 在 jQuery/AJAX 中获取函数的responseText

javascript - 无法在 JSFiddle 上创建图表

javascript - 将表单数据提交到php文件,但在不同页面上查看相同的结果

javascript - 同时为多个元素设置动画?

jquery - 从 JSON/jquery 获取 IP 地址

javascript - 在 jQuery 中使用 break 和 continue

javascript - $(document).click() 在 iPhone 上无法正常工作。查询

javascript - 使用 jQuery 处理加载可变数量模态的最佳方法是什么?

php - 一个表单包含两个提交按钮,每个按钮都有不同的操作

forms - 在react-jsonschema-form中带有必填字段的可选对象