1

我得到了以下在控制台中出错的 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'
4

1 回答 1

5

live需要一个事件类型,例如。click.

它将函数视为事件字符串,并且变得很困惑。

$('.hours').live(function() { /*... your code ...*/})    // wrong

需要是:

$('.hours').live("click", function() { /*... your code ...*/})    // works
于 2012-10-17T08:44:59.170 回答