Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
Php 通过jQuery克隆的输入字段赢得';不要屈服_Php_Jquery_Submit_Clone - Fatal编程技术网

Php 通过jQuery克隆的输入字段赢得';不要屈服

Php 通过jQuery克隆的输入字段赢得';不要屈服,php,jquery,submit,clone,Php,Jquery,Submit,Clone,我有一组隐藏的输入字段,这些字段在加载页面和/或单击按钮时被克隆 Html: 当我使用常规的提交按钮提交表单并将数据发送到PHP时,通过jQuery创建的输入都不会被提交,只有最初隐藏的输入字段(并且具有空值) 我是否需要使用AJAX来提交动态创建的表单内容?我很困惑 非常感谢您的帮助。如果我没记错的话,我不久前也遇到了同样的问题。问题是javascript只在可见的情况下更改名称attr,而不是在网页代码中更改名称attr,因此在提交表单时,输入仍然具有旧名称(与其他输入相同的名称)。我已经通

我有一组隐藏的输入字段,这些字段在加载页面和/或单击按钮时被克隆

Html:

当我使用常规的提交按钮提交表单并将数据发送到PHP时,通过jQuery创建的输入都不会被提交,只有最初隐藏的输入字段(并且具有空值)

我是否需要使用AJAX来提交动态创建的表单内容?我很困惑


非常感谢您的帮助。

如果我没记错的话,我不久前也遇到了同样的问题。问题是javascript只在可见的情况下更改名称attr,而不是在网页代码中更改名称attr,因此在提交表单时,输入仍然具有旧名称(与其他输入相同的名称)。我已经通过在JS中创建一个新的输入解决了这个问题,这个输入的名称已经设置好了?如果名称正确,那么您确定新输入在表单中吗?如果您的HTML是
,请澄清@fdreger在说什么(听起来像是可能的答案)
或类似内容,您正在将新元素添加到文档的
范围之外,因此它们不会包含在提交的信息中。相反,您应该切换元素,使
位于
中,就像
(严格的标准要求您无论如何都应该这样做,因为从技术上讲,
不应该是
IIRC的直接子项)。输入在表单中,我只是没有将它们包含在代码示例中。我试试克里斯蒂的小费。非常感谢各位,解决问题后我会更新。每个函数中的
n
是什么?
<div class="book_form" id="book_form_hidden">
   <input type="checkbox" name="select" class="sell_checkbox" />
   <h1>ISBN:</h1>
   <input type="text" name="isbn" class="input_large" maxlength="20" />
   <h1>Condition:</h1>
   <input type="text" name="condition" class="input_medium" maxlength="100" />
   <h1>Price:</h1>
   <input type="text" name="price" class="input_price" maxlength="3" />
   <input type="hidden" name="title" value="">
   <input type="hidden" name="author" value="">
   <input type="hidden" name="publisher" value="">
   <input type="hidden" name="thumbnail" value="">
</div>
function addOne() {
    var clone = $("#book_form_hidden").clone().removeAttr("id");
    clone.find("input").each(function() {
        $(this).attr("name", $(this).attr("name") + "[" + n + "]");
    });
    n++;
    clone.appendTo($("#form_container"));
}