我有一個單元格中有按鈕的表格行。當我單擊該按鈕時,我想將同一行的每個其他單元格內的文本分配給一個變量。所以如果我有5個單元格,我會有4個變量(第5個是按鈕)。只執行DOM迭代一次
我現在要做的是:
$('.save').click(function(e){
var id = $(this).closest('tr').find('.id').text();
var x = $(this).closest('tr').find('.x').text()
});
this
指按鈕,所以我有多達瀏覽到包含tr
,下至每一個細胞。有沒有辦法避免必須遍歷每個變量的dom?換句話說,要專注於該行而不重複每次$(this).closest('tr')
? 注意:我並不是指只寫它,而是指後面的操作。所以像var row = $(this).closest('tr')
這樣的東西不是一個解決方案,因爲無論如何,查找行的操作將會再次執行。
是什麼讓你覺得「var row = $(this).closest('tr')不是一個解決方案,因爲無論如何,尋找行的動作將被再次執行。」 ?這不是jQuery選擇器在我有限的理解中工作的方式。 –
嗯,你可以使用'$每個(函數(){VAR行= $(本).closest( 「TR 」)(「 拯救」); $(本)。點擊; ......',但它不「T很有意義這裏complexify你的代碼。去尋找父母的時間是無關緊要的。 –
@DanFarrell如果我的代碼替換'$(本).closest我只是用(」 TR「)'和'row'我的代碼可讀性的佔位符,或者我失去了一些東西 –