添加新项目的功能

时间:2011-12-15 17:24:15

标签: javascript jquery

我有发票。订单项排列在表格中,基本上如下:

| product name (drop down select menu) | price | quantity | line total |

我有这个JavaScript文件:http://pastie.org/3021944

如果我正在编辑发票,当我通过从下拉菜单中选择不同的产品来更改产品时,它会填充价格字段,行总额和发票的总计。该文件还添加了包含表单字段的新行并删除了表行。

一切正常,直到我点击“添加新行”将新产品添加到发票中。但是,只有在那些添加的行上,新行的价格和总计不会更新,它只是空白。

2 个答案:

答案 0 :(得分:4)

您需要使用on()附加活动,以便自动连接动态添加的内容

我的防火墙阻止了你的链接,但是这样的话:

$(document).on("blur", ".someSelector", function() {
   //your handler
});

如果您使用的是jQuery 1.7,或者如果您使用的是旧版本的jQuery,则可以使用delegate

$(document).delegate(".someSelector", "blur", function() {
   //your handler
});

使用直播,因为它已被弃用

答案 1 :(得分:1)

我认为你必须使用live()功能。

  

为现在和将来与当前选择器匹配的所有元素附加事件处理程序。

意味着它将应用于设置事件后添加的任何未来控件。

更新:似乎不赞成使用live(虽然在1.7中实现为注释状态)。所以Adam Rackis的答案似乎更合适。