2015-11-01 31 views
1

我想添加一行到輸入字段的表中並同時設置輸入字段值。下面是我的代碼,我收到一個錯誤:JQuery添加行並添加後設置輸入值

Error: Syntax error, unrecognized expression: #ItemName[]

任何人都可以幫助確定我做錯了嗎?

任何幫助表示讚賞。

$('#addItem').click(function() { 
 
$('#itemData tbody:last-child').append('<tr><td align="left"><input id="ItemName[]" name="ItemName[]" type="hidden" value="">cellAAA</td><td align="left"><input id="ItemNombre[]" name="ItemNombre[]" type="hidden" value="">cellBBB</td><td>edit/delete</td></tr>'); 
 
var row = $(this).parent().parent().children().index($(this).parent()) - 1; 
 
$("#itemData td:contains('cellAAA')").html($("#itemName").val()); 
 
$("#itemData td:contains('cellBBB')").html($("#itemNombre").val()); 
 
$("#ItemName[]")[row].val($("#itemName").val()); 
 
$("#ItemNombre[]")[row].val($("#itemNombre").val()); 
 
})

回答

0

我相當肯定,你需要\\所以每次使用支架時字符使用jQuery選擇時有\\它前面逃跑的[]字符。值得注意的是,在不逃避的情況下,javascript會做同樣的事情。

因此... $(「#ItemNombre \\ [\\]」)[row] .val($(「#itemNombre」)。val());

+0

,看上去充滿希望,但現在我收到以下錯誤:類型錯誤:$(...)[行]是不確定的 \t $(「# ITEMNAME \\ \\] 「)[行] .VAL($(」 #ITEMNAME「)VAL())。 – Jecker

+0

該系統編輯出額外的反斜槓。這是實際的代碼$(「#ItemName \\\ [\\\]」)[row] .val($(「#itemName」).val()); – Jecker

0

joshin855我們的建議固​​定我是有重大問題,但除去

$("#itemData td:contains('cellAAA')").html($("#itemName").val()); 
 
$("#itemData td:contains('cellBBB')").html($("#itemNombre").val());

,並在加入固定問題的行的時間設定我的價值觀。我的代碼現在看起來像這樣:

$("#addDropItem").click(function(){ 
 
$('#dropItem').bPopup(); 
 
}); 
 
$('#addItem').click(function() { 
 
$('#itemData tbody:last-child').append('<tr><td align="left"><input id="ItemName[]" name="ItemName[]" type="hidden" value="'+$('#itemName').val()+'">'+$('#itemName').val()+'</td><td align="left"><input id="ItemNombre[]" name="ItemNombre[]" type="hidden" value="'+$('#itemNombre').val()+'">'+$('#itemNombre').val()+'</td><td>edit/delete</td></tr>'); 
 
$('#itemName').val(''); 
 
$('#itemNombre').val(''); 
 
})