Javascript 未在IE上更新JS总计数

Javascript 未在IE上更新JS总计数,javascript,jquery,internet-explorer,canjs,Javascript,Jquery,Internet Explorer,Canjs,我在IE上遇到了一个问题,如果我检查列表上的项目,它不会更新购物车上的总价值。它可以在所有其他浏览器上正常工作,但不能在IE上正常工作 默认情况下,按钮为“全部付款”,但如果您选择一个项目,它将更新总值并更改按钮,以下是执行此操作的函数: update: function() { if (this.paying > 0) { this.element.find('.on_selected').show() .find('h2 span

我在IE上遇到了一个问题,如果我检查列表上的项目,它不会更新购物车上的总价值。它可以在所有其他浏览器上正常工作,但不能在IE上正常工作

默认情况下,按钮为“全部付款”,但如果您选择一个项目,它将更新总值并更改按钮,以下是执行此操作的函数:

update: function() {
    if (this.paying > 0) {
        this.element.find('.on_selected').show()
                .find('h2 span').text('$' + this.paying.toFixed(2));
        this.element.find('.on_selected_none, .pay_all').hide();
        this.element.find('.continue').css('display', 'block');
    } else {
        this.element.find('.on_selected_none, .pay_all').show();
        this.element.find('.on_selected, .continue').hide();
    }
}
这是我的整个JS课程

var Ticket = can.Control.extend({
/**
 * @var int total
 */
total: 0.00,
/**
 * @var int paying 
 */
paying: 0.00,
/**
 * 
 * @param {type} element
 * @param {type} options
 */
init: function(element, options) {
    var self = this;
    element.find(':checkbox').each(function() {
        self.total += parseFloat($(this).val());
        if ($(this).is(":checked")) {
            self.add($(this));
        }
    });
    this.update();
},
/**
 * 
 * @param dom el
 */
add: function(el) {
    var v = parseFloat(el.val());
    this.paying += v;
},
/**
 * 
 * @param dom el
 */
substract: function(el) {
    var v = parseFloat(el.val());
    this.paying -= v;
},
/**
 * Event Listener
 * @param dom el
 */
':checkbox change': function(el) {
    if (el.is(":checked")) {
        this.add(el);
    } else {
        this.substract(el);
    }
    this.update();
},
'table tr div.row click': function(tr,e){
//        console.log();
//        if($(e.target).is('label')){ return; }
        tr.parent().prev().find('input[type=checkbox]').trigger('click');
    },
    'table .checkbox-big label click': function(tr){
//        console.log(tr.prev());
//        tr.prev().trigger('click');
//        tr.find('label').trigger('mouseover');
    },
    /**
     * Form button event lister
     * 
     * Submits form
     */
    'a.button click': function(btn, ev) {
        ev.preventDefault();
        if (btn.hasClass('pay_all')) {
            this.element.find(':checkbox').each(function() {
                $(this).trigger('click');
            });
            this.element.submit();
        }else{
            if(this.paying > 1){
                this.element.submit();
            }else{
                alert('Please select tickets to proceed.');
            }
        }
    },
    /**
     * Based on user selection message and button gets changed
     */
    update: function() {
        if (this.paying > 0) {
            this.element.find('.on_selected').show()
                    .find('h2 span').text('$' + this.paying.toFixed(2));
            this.element.find('.on_selected_none, .pay_all').hide();
            this.element.find('.continue').css('display', 'block');
        } else {
            this.element.find('.on_selected_none, .pay_all').show();
            this.element.find('.on_selected, .continue').hide();
        }
    }
});
有人知道这是否是canJS在IE上的常见问题吗?还是我做错了什么


你可以现场查看,搜索车牌FXZ4448,纽约州,点击搜索。。。我的问题出现在票证选择屏幕上

请尝试创建一个。尝试删除任何不直接涉及问题的代码。是否有特定版本的IE让您遇到麻烦?我刚刚在XP上的IE8上检查了这个网站,它正在运行。