AJAX PHP-提交后重新加载div

AJAX PHP-提交后重新加载div,php,jquery,ajax,Php,Jquery,Ajax,我正试图用jquery和ajax重新加载一个select,在我提交一个新条目后,必须重新加载这个select,现在我达到了这一点 $("form").on("submit", function (e) { e.preventDefault(); var form_id = $(this).attr('id'); var form_details = $('#' + form_id); $.ajax({ type: "POST", u

我正试图用jquery和ajax重新加载一个select,在我提交一个新条目后,必须重新加载这个select,现在我达到了这一点

$("form").on("submit", function (e) {
    e.preventDefault();
    var form_id = $(this).attr('id');
    var form_details = $('#' + form_id);
    $.ajax({
        type: "POST",
        url: 'Users.php',
        data: form_details.serialize(),
        success: function (data) {
            $('#check_data').html(data);
            $('#div_to_update').load('my_page.php #div_to_update');
        }
    }
});
要重新加载的div有一个由php代码生成的html select,其他字段只是普通html:

这是第一个表单,必须使用我在表单2中输入的值重新加载:

<div id="div_to_update">
    <form id="form1">
        <?php Helper::combo_users(); ?>
        /*
        ...
       */
    </form>
</div>
这是表格2:

<form id="form2" method="post">
    <input type="text" id="user_reg" name="user_reg"/>
    <input type="text" id="user_name" name="user_name"/>
    <input type="submit" value="Add"/>
</form>

奇怪的是,这段代码将在okI第一次在form2中输入值并发送时运行,form1将使用新值重新加载,但第二次它不起作用,当我在表单2上单击submit时,似乎什么也没有发生,第三次它将再次起作用,再次单击submit按钮,值为send,表单1被重新加载,依此类推

简单地说,您不是第二次工作,因为您正在序列化一个在ajax中动态更新的表单

动态加载表单元素(如输入)时,jQuery不会序列化


您的解决方案可以使用JSON对象加载新值,并放入foreach以显示新内容。

您每次都在覆盖表单,这是您的意图吗?每次用户生成新用户时,此选择必须重新加载新值。我忘了说我用了两种形式。一个用于提交新用户,另一个用于使用已提交的信息,如上所述。是第一个表单还是第二个表单不起作用?我编辑了我的问题。jQuery在运行时只知道页面中的元素,因此jQuery无法识别添加到DOM中的新元素。为了防止这种使用,将事件从新添加的项冒泡到DOM中的某个点,当jQuery在页面加载上运行时,该点就在DOM中。许多人使用文档作为捕获冒泡事件的场所,但没有必要在DOM树中占据那么高的位置。理想的