2026, 새로운 도약을 시작합니다.

IE에서 '00'이(가) 정의되지 않았습니다. 채택완료

Copy




function SetTime()

    {

        var f = document.fwrite;

        // 예약시간을 배열로 정함

        var arrTime = [

            ["닥터1","닥터2","닥터3","닥터4"],  

            ["닥터5","닥터6"],

            ["닥터7","닥터8"],

            ["닥터9"],

        ];

        var TotalCnt = 0;

        f.elements["wr_5"].options.length=0;

        var sgubun = f.elements["wr_9"].value;

        var spart = sgubun;

        

        if(spart == "정형외과"){ 

              arrNum = 0;}

        else if(spart == "내과"){  

              arrNum = 1;}

        else if(spart == "마취통증과"){  

              arrNum = 2;}

        else if(spart == "영상의학과"){ 

              arrNum = 3;}

        TotalCnt = arrTime[arrNum].length;

        for (i=0;i

이런식으로 정형외과, 내과, 마취통증과, 영상의학과 4가지의 라디오 버튼 중 한가지를 선택하면

아래 select에 옵션으로 각각 닥터 리스트가 출력되게끔 했는데 크롬은 이상 없고

IE에서만 SCRIPT5009: 'arrNum'이(가) 정의되지 않았습니다. 라는 콘솔 에러가 나오네요..

어떻게 해결방안 있을까요??

답변 3개

채택된 답변
+20 포인트

IE에서만 SCRIPT5009: 'arrNum'이(가) 정의되지 않았습니다. 라는 콘솔 에러가 나오네요..

==

라인 번호도 같이 보여 주지 않나요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

TotalCnt = arrTime[arrNum].length;
이쪽 라인으로 나옵니다..
arrNum=0; // 초기화
if(spart == "정형외과"){
arrNum = 0;}
else if(spart == "내과"){
arrNum = 1;}
else if(spart == "마취통증과"){
arrNum = 2;}
else if(spart == "영상의학과"){
arrNum = 3;}

모든 조건 문에 참이 안 되면
arrNum이 정의되지 않기 때문에 발생하는 것으로 보입니다.
arrNum 초기화를 추가해 보세요.
TotalCnt = arrTime[arrNum].length;
답변 감사드립니다..!
에러는 해결 되었지만 라디오 버튼을 클릭해도 wr_9의 value값이
초기화된 arrNum=0; 의 값으로 고정되어 출력되는것같습니다.. (IE에서만)
wr_9가 라디오 버튼이라면 여러 개가 있다는 뜻인데
var sgubun = f.elements["wr_9"].value;
이렇게 값을 가져 오는 것이 문제 아닐까요?

댓글을 작성하려면 로그인이 필요합니다.

라디오 버튼 형식을 셀렉트 형식으로 수정하니 해결 됐습니다!

답변 주신분들께 감사드립니다^^

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

function SetTime() {

var arrNum;

이렇게 선언 하시고 돌려보세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

이렇게 선언하고 돌리면
TotalCnt = arrTime[arrNum].length;
이쪽 라인에서
SCRIPT5007: 정의되지 않음 또는 null 참조인 'length' 속성을 가져올 수 없습니다.
이런 에러가 납니다 ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고