0

私が作成したこの内部アプリケーションがあります。IE9 (および他のすべてのブラウザー) では正常に動作しますが、一部の内部ユーザーはまだ IE8 を使用しています。

問題の原因となっている行は次のとおりです。

var thisClass = $thisElement.attributes.class.value;  

「SCRIPT1010: 識別子が必要です」というエラー メッセージが表示され、マーカーはクラス内の c の直前にあります。

コードは次のとおりです。

$(document).on('click', function(){ 
var $this = $(this);
var $thisElement = $this.context.activeElement;
if ($thisElement != null && $thisElement.attributes.type != null && $thisElement.attributes.type.value == "checkbox"   ){
        var thisClass = $thisElement.attributes.class.value;
        var thisValue = $thisElement.value;
        if (thisValue == "All"){
            if($thisElement.checked){
                $('input[class="'+thisClass+'"]').each(function(i){
                        var checkboxValue = $(this).val();
                        $("#"+thisClass+checkboxValue).prop('checked',true);
                 });

            }else {             
                $('input[class="'+thisClass+'"]').each(function(i){
                    var checkboxValue = $(this).val();
                    $("#"+thisClass+checkboxValue).prop('checked',false);
                });                 
            }               
        }else // since the val is not = all we want to uncheck the all box if any of the bottom boxes is unchecked
        if (!$thisElement.checked){                 
                $("#"+thisClass+"All").prop('checked',false);
        }
        cnse.checkTheCheckboxes();
    }else{
        return;
    };// end if it is a checkbox
});
4

2 に答える 2

1

HTML で要素のクラスを取得する場合はclassName、要素自体で属性を使用する必要があります。

var thisClass = $thisElement.className;
于 2013-09-06T20:14:08.773 に答える