我在使用 jquery append 函数时遇到问题。我想为每个数字输入一个字段(弄清楚所有内容) 我遇到的问题是输入被添加(视觉上)到页面中,但不会包含在 PHP 脚本的 $_POST 变量中。
这不是因为我使用了拼写错误的名称var_dump($_POST);
,并且它不包括在那里。这也不是因为缺少名称属性
我已经读到您应该将输入附加到实际表单中,但我不能这样做,因为它们必须在特定的 div 内。我尝试使用form#divname
,但这似乎根本不起作用,因为它不再附加任何东西,甚至在视觉上也没有。
我要附加的 div 在<form>
.
代码:
jQuery:
$("#group_"+grp+"_opts_div").append('
<input type="text" name="group_'+grp+'_'+i2+'" style="width:80px;" placeholder="Option name">
$<input type="text" name="group_'+grp+'_'+i2+'_extra" style="width:30px;" placeholder="Extra">
<input type="radio" name="group_'+grp+'_default" value="'+i2+'" />');
(如果有点乱,请见谅)
HTML:
<form method="post" action="?p=1" id="form" enctype="multipart/form-data">
<div class="box" id="optionbox" style="display:none;">
<div id="groupsdiv"></div>
</div>
<hr /><input type="submit" value="Add product" class="button" name="addproduct" />
</form>
和 PHP:
foreach($_POST as $key => $value){
echo $key . ": " . $value . "<br />";
${$key} = htmlspecialchars($value, ENT_QUOTES);
}
视频解释它的作用:http: //youtu.be/eyzUeKi3ZAk
从输出中可以看出,Product_option 等于 2(是的,使用选项)和 product_optiongroups 等于 3(如 3 个组)