2016-10-29 31 views
0

我想了解如何使用變量this_table在一段代碼低於數據追加到表。變量this_table看起來像這樣#myTable1。 Jquery在代碼的append部分沒有看到它是一個變量。 $('#myTable > tbody > tr').append('<td>info,</td>');工作正常。爲什麼我不能使用jQuery變量?

jQuery的

$(document).on('submit', '.myForm', function(e) { 

    var tableid = $(this).closest("div").find("table").attr("id"); //find table id 
    var this_table = '#' + tableid; //Add ID selector 
    $('this_table > tbody > tr').append('<td>info,</td>'); //Append to table 

    e.preventDefault(); 
}); 

回答

2

您的變量將被解釋爲一個字符串。您需要連接的變量與字符串...

改變這一行:

$('this_table > tbody > tr').append('<td>info,</td>'); //Append to table 

要這樣:

$(this_table + ' > tbody > tr').append('<td>info,</td>'); //Append to table 
0

您可以使用jQuery發現功能。改線

$('this_table > tbody > tr').append('<td>info,</td>'); //Append to table 

這樣:

$(this_table).find("tr").append("<td>info</td>"); 
+0

這並不一定選擇完全相同的元素。他使用「>」選擇器,這意味着直接的孩子。你的代碼會選擇所有屬於tr元素的兄弟。實際上,你將使用$(this_table)。兒童(「TBODY」)。子女(「TR」)。追加(「​​信息,」)來獲得他目前正在使用同樣的選擇...... – Michael

+0

@邁克爾你是正確的。謝謝 –

相關問題