0

次のjQueryコードがあります:

$('#btnAdd').click(function() {
var i = ($('#stuff >tbody >tr').length)+1;
$('#stuff >tbody >tr:last').clone(true).find("input,select").each(function(){
$(this).attr({
'name': function(_, name){
   return name + i;
},
'value': ''
});}).end().insertAfter('#stuff >tbody>tr:last').show();

次の DOM を生成します。

<tr>
<td class="td_6">
<select name="name1">
<option selected="" value="Bricklayers">Bricklayers</option>
<option value="Sheet Metal Workers">Sheet Metal Workers</option>
<option value="Sprinkler Fitters">Sprinkler Fitters</option>
</select>
<td>
<td class="td_6">
<input name="V_union" value="1" type="radio">Yes<input name="V_union" value="0" type="radio" checked="checked">No
</td>
<td class="td_6">
<input name="V_picketed" value="1" type="radio">Yes<input name="V_picketed" value="0" type="radio" checked="checked">No
</td>
<td>
</td>
</tr>

<tr style="">
<td class="td_6">
<select name="name13" value="">
<option selected="" value="Bricklayers">Bricklayers</option>
<option value="Sheet Metal Workers">Sheet Metal Workers</option>
<option value="Sprinkler Fitters">Sprinkler Fitters</option>
</select>
</td>
<td class="td_6">
<input name="V_union3" value="" type="radio">Yes<input name="V_union3" value="" type="radio" checked="checked">No
</td>
<td class="td_6">
<input name="V_picketed3" value="" type="radio">Yes<input name="V_picketed3" value="" type="radio" checked="checked">No
</td>
<td>
</td>
</tr>

フォームタグは次のとおりです。

<form method="post" action="view_job.php" name="updateViolations" enctype="multipart/form-data">

動的に入力された行はタグ内にあります。

$_POST で var_dump を実行すると、動的に生成された新しいフォーム入力が $_POST 変数に表示されません。

他のいくつかの質問を確認しましたが、すべて正しく行っているように見えますが、道に迷っています。

4

2 に答える 2

2

提出してくださったすべての方々に感謝します。簡単な修正であることが判明しました。

https://stackoverflow.com/a/3687359/983061

再度、感謝します。

于 2013-01-14T22:18:45.790 に答える
1

重複するid属性がいくつかあるようです。は、id1 ページにつき 1 回だけ使用できます。

idそれらを からに変更することを検討してくださいclass(classesはページごとに複数回使用できます)。

重複: clonedInput, td_6_left, check1,check13

于 2013-01-14T19:03:20.490 に答える