2016-04-04 68 views
0

我有一個動態表格,其中包含多個tr和td以及按鈕。每次點擊(向上)按鈕時,我想插入一個td內容的計數數字。像這樣的:[3 x ABC]。Onclick更改或插入動態表格單元格中的文本

我的演示不起作用,但我目前的版本;我點擊了哪個按鈕,數字出現並一次增加到所有行中。我希望按鈕在respektiv行中運行。 如何管理jQuery中的?請。

$(function(){ 
    var count=1; 
    $('.up').click(function(){ 
    count++ 
    $('.times').text(count+' x '); 
}) 
}); 

DEMO

+1

來吧,你*必須*已經注意到,按鈕的樣式也不起作用。你輸入'claas'而不是'class'。這不是唯一的問題,但我會從那裏開始......如果你還將jQuery添加到你的小提琴中,至少你有[要調試的東西](https://jsfiddle.net/j9vnbcf0/3/) ... – GolezTrol

回答

1

這條線的問題是:

$('.times').text(count+' x '); 

它選擇發生之.times並設置文本他們。

就你而言,你想要在同一行上的那個。因此,從點擊元素(this),上去並找到最接近的tr在祖先鏈。然後,該行中,再次找到一個.times設置文本中:如果你想有每行計數器太

$(this).closest('tr').find('.times').text(count+' x '); 

Updated fiddle

,你可以在櫃檯信息存儲在數據屬性元素。另一個可以說是更好的解決方案是創建包含變量的閉包。這後一種解決方案,我已經實現了在...

Yet another update of the fiddle

+0

感謝您的幫助,但伯爵繼續在其他行上,這不完全是預期的。每一行應該從1開始,每增加一次點擊。有什麼建議麼? – Khkhy

+0

是的。使用閉包添加更新。 – GolezTrol

+0

太棒了,謝謝。 – Khkhy

相關問題