我正在使用cocoon为我的用户创建报价。一个Quote
has_many Expense Categories
,每个Expense Category
有很多Expenses
我添加了一些JS,因此每次我的用户更改费用的值时,它都会更新另一个输入的总价格,但这不适用于新创建的输入。
我确保他们都有相同的类(.expense .price-input) 我尝试了这段小代码:
$('.expense .price-input').keyup(function () {
alert('OK');
});
当我在现有输入中输入内容时,会显示OK。当我创建费用时,在新创建的输入中键入内容不会触发它。有什么要初始化的吗?
答案 0 :(得分:2)
事件在初始页面加载期间绑定到字段,这意味着不会绑定动态添加的字段。
但是,您可以将此类事件绑定添加到加载页面时存在的父级(如文档),并将选择器作为参数传递给函数。
$(document).on('keyup', '.expense .price-input', function(){
alert('OK');
});