ie8下 JS全选功能报错 求达人帮忙看下代码

// 요일계산
function autoCalDaysNm() {
for(var j=1; j<=29; ++j) {
var el = $("#writeForm input[name=atdDay" + j + "]");
var d = Date.parse("2016/02/" + el.val());
if (d) {
var t = d.toString("ddd");

            if (t == "토") {
                $("label", el.parent()).html(gDayOfWeek1[t]);
            } else if (t == "일") {
                $("label", el.parent()).html(gDayOfWeek1[t]);
            } else {
                $("label", el.parent()).html(gDayOfWeek1[t]);
            }

            if(t == "토" || t.toUpperCase() == "SAT" || t == "일" || t.toUpperCase() == "SUN") {
                checkDaysAll("tmpCheckDaysAll_" + j, "stsStat" + j, "stsStatDay" + j, "DEF");
            }
        }
    }
}

// 월간훈련일수변경시
function f_fixDayCnt(aData) {
    var stsFixdayCnt = $("#stsFixdayCnt");

    for(var i=0; i<atdRealPrsn; ++i) {
        if($("#writeForm input[name=stsFixdayCnt]:eq(" + i + ")").val() == "") {
            $("#writeForm input[name=stsFixdayCnt]:eq(" + i + ")").val(aData);
        }
    }

    // 출근일계산
    calculate();
}

// 전체출석
function checkMonthAll() {
    var stsStat = [];
    var stsStatDay = [];
    var attendType = "";

    if ($("#writeForm input[name=tmpCheckMonthAll]").prop("checked")) {
        attendType = $("#attendType").val();
    }

    for(var j=1; j<=29; ++j) {
        stsStat[j-1] = $("#writeForm input[name=stsStat" + j + "]");
        stsStatDay[j-1] = $("#writeForm input[name=stsStatDay" + j + "]");
    }

    for(var i=0; i<atdRealPrsn; ++i) {
        for(var j=1; j<=29; ++j) {
            var stsStatDayVal = trim(stsStatDay[j-1][i].value);

            // Y:훈련가능일, N:훈련가능기간 공휴일(토,일), X:훈련가능하지않은일자
            // 훈련가능일자만 처리한다. (공휴일 및 훈련불가일자 제외)
            if (stsStatDayVal == "Y") { 
                stsStat[j-1][i].value = attendType;
            }
        }
    }

    // 출근일계산
    calculate();
}

// 일자별전체체크
function checkDaysAll(pCheckDaysAll, pstsStat, pstsStatDay, aType) {
    var attendType = "";

    // 초기로딩시 토,일은 훈련없음으로 처리
    if(aType=="DEF") {
        attendType = "/X";
    } else {
        if ($("#writeForm input[name=" + pCheckDaysAll + "]").prop("checked")) {
            attendType = $("#attendType").val();
        } else {
            attendType = "";
        }
    }

    for(var i=0; i<atdRealPrsn; ++i) {
        var stsStatDayVal = $("#writeForm input[name=" + pstsStatDay + "]:eq(" + i + ")").val();

        stsStatDayVal = stsStatDayVal.toUpperCase();

        // Y:훈련가능일, N:훈련가능기간 공휴일(토,일), X:훈련가능하지않은일자
        if (stsStatDayVal != "X") {
            // 취소시 훈련가능기간 공휴일이면 훈련없음으로
            if(attendType=="") {
                if($("#writeForm input[name=" + pstsStatDay + "]:eq(" + i + ")").val()=="N") {
                    attendType = "/X";
                }
            }

            $("#writeForm input[name=" + pstsStat + "]:eq(" + i + ")").val(attendType);

            if(aType=="DEF") {
                $("#writeForm input[name=" + pstsStatDay + "]:eq(" + i + ")").val("N");
            }
        }
    }

    // 출근일계산
    calculate();
}

// 훈련생별 전체체크
function checkMemAll(pCheckMemAll, aIdx) {
    var attendType = "";

    aIdx--;

    if ($("#writeForm input[name=" + pCheckMemAll + "]").prop("checked")) {
        attendType = $("#attendType").val();
    } else {
        attendType = "";
    }

    for(var j=1; j<=29; ++j) {
        var stsStatDayVal = $("#writeForm input[name=stsStatDay" + j + "]:eq(" + aIdx + ")").val();

        // Y:훈련가능일, N:훈련가능기간 공휴일(토,일), X:훈련가능하지않은일자
        // 훈련가능일자만 처리한다. (공휴일 및 훈련불가일자 제외)
        if (stsStatDayVal == "Y") { 
            $("#writeForm input[name=stsStat" + j + "]:eq(" + aIdx + ")").val(attendType);
        }
    }

    // 출근일계산
    calculate();
}

var atdRealPrsn = 4;
var maxDayCha = 0;


这是一段全选复选框的JQ   在IE9以上都没问题  在IE8下 var stsStatDayVal = trim(stsStatDay[j-1][i].value); 这段总报错为空或不是对象,求高人解答  在线等  谢谢
查看全部
liquan1004
liquan1004
2015/06/19 08:32
  • Internet-explorer
  • 点赞
  • 收藏
  • 回答
    私信

3个回复