首页 文章

IE8 Jquery Javascript“错误:需要对象”错误

提问于
浏览
0

当此函数中的switch语句运行时,IE8抛出“Error:Object required”消息(实际jquery库脚本中的错误,而不是我的javascript文件) . 此代码适用于IE6,IE7,FF3和Safari ......任何想法?它是否与交换机中的'$(this)'选择器有关?谢谢!

function totshirts(){
    $('.shirt-totals input').val('0');
    var cxs = 0;
    var cs = 0;
    var cm = 0;
    $.each($('select.size'), function() {
        switch($(this).val()){
            case "cxs":
                cxs ++;
                $('input[name="cxs"]').val(cxs);
                break;
            case "cs":
                cs ++;
                $('input[name="cs"]').val(cs);
                break;
            case "cm":
                cm ++;
                $('input[name="cm"]').val(cm);
                break;
        }
    });
}

2 回答

  • 3

    哦,不,不要这样做 .

    做更多的事情:

    $('.shirt-totals input').val('0');
    $('select.size').each(function() {
     var name = $(this).attr('name');
     var currVal = parseInt($("input[name='"+name+"']").val());
     $("input[name='"+name+"']").val(currVal+1);
    });
    

    作为旁注,我倾向于发现jQuery似乎在进行“等于”比较时处理单引号优于双引号 .

  • 1

    我将jQuery库从1.2.6升级到1.3.2,这解决了这个问题 . 没有意识到我有一个旧的版本 - oops .

    谢谢你的帮助!

相关问题