Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.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
Javascript 表单会检测通过jQuery动态创建的字段吗?_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 表单会检测通过jQuery动态创建的字段吗?

Javascript 表单会检测通过jQuery动态创建的字段吗?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,背景信息 我们使用开源代码来管理小部件。其中一个页面允许用户编辑可能有数百行的表中的数据。对于每一行,它当前正在填充一个包含数百个值的下拉框。正如你所能想象的,这需要很长时间,而且没有必要。我们不会一次编辑所有行 所以我一直在尝试调整代码以防止这种情况发生。我已将行中的所有下拉列表更改为DIV标记,并为它们创建了一个新按钮来编辑行 当用户单击EDIT时,DIV将变为下拉菜单。 到现在为止,一直都还不错。现在页面加载时间不到一秒,而超过15分钟 问题 问题是,当用户单击SUBMIT(针对特定行)保

背景信息

我们使用开源代码来管理小部件。其中一个页面允许用户编辑可能有数百行的表中的数据。对于每一行,它当前正在填充一个包含数百个值的下拉框。正如你所能想象的,这需要很长时间,而且没有必要。我们不会一次编辑所有行

所以我一直在尝试调整代码以防止这种情况发生。我已将行中的所有下拉列表更改为DIV标记,并为它们创建了一个新按钮来编辑行

当用户单击EDIT时,DIV将变为下拉菜单。 到现在为止,一直都还不错。现在页面加载时间不到一秒,而超过15分钟

问题

问题是,当用户单击SUBMIT(针对特定行)保存更改时,POST数据中不包括我一直使用的DIV字段

因此,当页面加载时,该字段具体如下所示:

<td><div id="location_name">canada</div></td>
加拿大
但是,当您单击编辑按钮并且触发的jQuery运行完毕后,它看起来是这样的(根据F12开发人员工具,而不是查看源代码):


--没有--
加拿大
美国
当用户单击特定行的“编辑”按钮时,通过克隆现有下拉菜单创建此下拉菜单。(我正在克隆,因为现有下拉列表中包含了我需要的所有值。)

对于上述示例,我需要表单数据包含“location_id=15”的值

我到目前为止检查的内容:

  • 我已确保所讨论的字段位于表单标记内
  • 或者,我想我可以在表格的每一行中创建空的下拉控件…并将它们最初设置为隐藏。 然后通过jQuery,如果用户想要编辑行,我可以将状态更改为可见,并以某种方式复制主下拉列表中的所有数据 问题

    表单是否应该能够“查看”jQuery动态创建的字段


    如果是这样,我还能做错什么?如果你想看到完整的代码,请告诉我,我会为你粘贴它

    克隆后,页面上是否有两个相同id的元素?这里缺少的宝贵代码是克隆下拉列表的代码。是的,正如@TravisJ所说。例如,您是否使用
    .clone(true)
    保存事件?呸!我正在编码的计算机刚刚失去了所有的互联网连接。等待网络人员调查问题。很抱歉你会发代码吗soon@RichardHamilton我认为这不是复制品。我可能已经混淆了这个问题,添加了一些我一直在玩的测试代码(现在我已经删除了)。但是我的问题是为什么jquery初始化的数据没有包含在我的POST数据中。
    <td>
        <select tabindex="1" id="location_id" name="location_id">
            <option value="0">-- NONE --</option>
            <option value="15" style="font-weight: bold">canada</option>
            <option value="16" style="font-weight: bold">usa</option>     
        </select>
    </td>