2012-02-05 78 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