2012-04-18 99 views
0

我有多個行,每個行有三個select元素。在初始化過程中有兩個這樣的行,並且可以動態添加更多的行。添加每行時,我會將更改事件添加到所有這些元素,以便當該行中的某個下拉列表發生更改時,特定行中的所有其他元素都會發生更改。還有另一個select元素#foo,它不是任何行的一部分(它顯示在頁面的頂部),更改時應該更改所有行上所有選擇元素的內容。基於一個元素的變化事件觸發多個事件 - jQuery

我試着在添加jQuery("#foo select").change(callback_function)的同時爲每行添加更改事件。但是當我這樣做時,更改#foo只會更新最後插入的行而不更新其他行。如何使其更改#foo更新所有行?

任何解決方案將不勝感激。

回答

0

這將是比較容易回答,如果你提供一些源代碼,但我明白了什麼(當使用的foo一個id的select有修改,其他select元素通過一定的函數變化),這可能爲工作你:

$("#foo").on('change', function() { 
    $('select.other-selects').each(function (i) { 
    callback_function(); 
    }); 
}); 

哪裏.other-selects是類,你designete你別人select元素用。

+0

我已經通過添加一個特定於該行'jQuery(「#foo select」)。change(callback_function)''的更改事件處理程序來做到這一點。當我這樣做時,前面行的更改事件也應該保留。爲什麼一個元素不能有多個綁定到它的變化事件? – Sanjay 2012-04-19 05:19:56

+0

你能發表一些源代碼嗎? – Maverick 2012-04-19 07:58:20