我得到了以下在控制台中出错的js代码,但我不太确定自己在做什么错。基本上我正在尝试获取字段列表,以便可以进行一些计算。
var LabourItems = {
rate: null,
hours: null,
total: null,
init: function(object) {
var rate = $(object).children('.rate').first();
var hours =$(object).children('.hours').first();
total = rate * hours;
updateTotal(object,total);
},
updateTotal: function(object, total) {
$(object).children('.total').first().attr('value', total)
}
}
//reactTochange for those inputs that you want to observe
$('.hours').live(function() {
var labourItems;
jQuery.each($('.labouritems'), function(key,value){
labourItems.push(LabourItems.init(value));
});
});
控制台错误:
Uncaught TypeError: Object function () {
var labourItems;
jQuery.each($('.labouritems'), function(key,value){
labourItems.push(LabourItems.init(value));
});
} has no method 'replace'
最佳答案
live
需要一个事件类型,例如。 click
。
它将函数作为事件字符串处理,令人困惑。
$('.hours').live(function() { /*... your code ...*/}) // wrong
需要是:
$('.hours').live("click", function() { /*... your code ...*/}) // works