1

最後の行が次の入力テーブルがあります。

    <tr>
        <td>
           <input type="hidden" value="" readonly="" size="3" name="id[]">
       </td>
<td>
      <input type="hidden" value="" readonly="" size="3" name="fkcommand[]">
      </td>
<td>
<select name="type[]">
<option value="C" selected="selected">C</option>
<option value="P">P</option></select>
</td>
<td>
  <input type="input" value="1200" size="6" name="strike[]">
</td><td>
      <input type="input" value="-2" size="6" name="quantity[]">
    </td>
    </tr>

この入力行のクローンを作成し、非表示の値fkcommandを除く値を空にして、テーブルの最後に追加します

私はこれを使用しています:

var row = $(this).parent().find('table tbody tr:last');
row.clone().find('input').val('').end().insertAfter(row).find('[name=fkcommand[]]').val('222');

これはfkcommandに値「222」を追加しません

4

2 に答える 2

1

おそらく問題はセレクタにあります。属性値を引用することをお勧めします。

.find("[name='fkcommand[]']")

ただし、次のようにコードを書き直すことをお勧めします。

row.clone().insertAfter(row).find("input").each(function() {
    this.value = this.name == "fkcommand[]" ? "222" : "";
});
于 2012-10-17T16:30:08.127 に答える
0

ここに行く

var clonedRow = $(table).last('tr').clone();
于 2012-10-17T16:36:47.880 に答える