2012-02-05 93 views
1

我似乎無法弄清楚這一點......Jquery - 表中的克隆選擇菜單

我有一個'x'行的表。當我點擊一個按鈕時,我想克隆最後一個表格行並將其追加在它後面。到目前爲止沒有問題。但是我在每個表格行中都有select(使用selectmenu樣式)。

我在這裏做一個簡單的例子: http://jsfiddle.net/u8Lpe/

當您單擊「添加錶行」你不能選擇新添加的行的選項。 (它只會改變被克隆的行的值)

我已經搜索並嘗試了很多不同的東西,但到目前爲止我還沒有能夠修復它。 (使用刷新/銷燬選項等)

希望有人能幫助我,或有一個想法該怎麼做!

回答

1

在你的代碼中有幾個問題。對於與頁面標記一起渲染的第一行,您可以在其中的select元素上應用selectmenu插件。 selectmenu附加幾個事件和樣式,以及一些額外的標記。

當你克隆(傳遞true作爲參數)tbody其中包含此選擇元素與selectmenu插件應用,一切都被克隆。 true參數告訴jQuery克隆也應用於元素的事件,這不是必需的。

你必須做的是clone通過傳遞false和克隆後刪除多餘的span和內聯樣式該插件添加,然後將新行選擇元素調用selectmenu

我已經在你的小提琴中修復了這個問題。

Demo

+0

乾杯!完美的作品,非常感謝。對於那些有類似問題的人,請注意上述演示中仍然存在「真」而不是「假」。也因爲某些原因,我不得不使用div而不是span。謝謝。 – user985911 2012-02-05 16:58:09

0

您正在克隆具有ID的元素(這很糟糕,因爲ID應該是唯一的)。在將其重新插入到DOM之前,您應該更改ID。同時你可以使新元素成爲一個選擇菜單。

+0

你說得對,這是非常糟糕的。我想我應該把它改爲一個類。但即使它不能解決問題(http://jsfiddle.net/u8Lpe/2/),你能舉一個例子,我應該怎麼做才能使它工作? (我不是專業人士)再次感謝。 – user985911 2012-02-05 15:44:20