Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在注入表单元素后重新加载DOM?_Jquery_Dom_Forms_Dynamic_Reload - Fatal编程技术网

Jquery 在注入表单元素后重新加载DOM?

Jquery 在注入表单元素后重新加载DOM?,jquery,dom,forms,dynamic,reload,Jquery,Dom,Forms,Dynamic,Reload,我正在尝试组合一些jQuery代码,一旦用户执行某个操作,这些代码将向表单添加表单元素(输入复选框)。稍后,用户可以提交此表单 我对jQuery完全不熟悉,但我已经设法编写了一些几乎可以工作的代码。以下是我得到的: $("#someDivID").load("myPage.asp?id=x"); asp生成一些表单元素,这些元素都很好地显示在页面上 但是,一旦我提交(通过POST)表单,新表单元素实际上就不会被发布。以下是表单提交功能: $(document).ready(function()

我正在尝试组合一些jQuery代码,一旦用户执行某个操作,这些代码将向表单添加表单元素(输入复选框)。稍后,用户可以提交此表单

我对jQuery完全不熟悉,但我已经设法编写了一些几乎可以工作的代码。以下是我得到的:

$("#someDivID").load("myPage.asp?id=x");
asp生成一些表单元素,这些元素都很好地显示在页面上

但是,一旦我提交(通过POST)表单,新表单元素实际上就不会被发布。以下是表单提交功能:

$(document).ready(function() {

    var options = {};

    // bind to the form's submit event
    $('#MyFormID').submit(function() {
      $(this).ajaxSubmit(options);
      return false;
    });
});
如果我在这一点上完全错了,请原谅,但我猜这是因为新的表单元素是在最初加载DOM之后生成的。我是否必须重新加载DOM(如果是的话,如何加载?),或者我应该以不同的方式完成整个过程

致以最良好的祝愿,
Adam

这不是在表单中添加更多元素的问题

您需要确保将输入元素(无论是复选框还是其他)附加(在您的案例中加载)到表单元素本身或表单的子元素。此外,您是否检查了输入的name属性?如果没有名字,输入将不会被发布


顺便说一句:ajaxSubmit做什么?

安装Firebug并查看输入元素在文档中的位置。如果它们不在表单块内,则不会提交。(正如aefxx所说,如果它们没有名字,它们就不会出现在HTTP请求中。)

最可能的问题是,“someDivID”元素不是“MyFormID”的子元素/后代,因此不会被发布

确保加载表单控件的div放置在表单中


如果这不起作用,请考虑把你的HTML的相关条目张贴以进一步支持。

Ajax提交是我认为我需要的jQuery表单插件的一部分。然而,你的回答把我引向了正确的方向。表单和输入元素被愚蠢地放置在同级div元素中,因此在将表单包装在输入元素周围之后,现在一切都可以完美地工作。谢谢!我只是想澄清一下。标记看起来像这样:。。现在已改为