function문 안에서 for문 들리고 있습니다.

function문 안에서 for문 들리고 있습니다.

QA

function문 안에서 for문 들리고 있습니다.

답변 1

본문


function myselected(g_idx, select_idx.....){
if (obj.className == 'default' || obj.className == 'over') { // 선택가능한 상태
       obj.className = "selected";
        if (pos != 1) { // 선택된 값이 1이 나머지 pos 를 모두 변경
               for(i=1; i<12; i++){
                ele = document.getElementById(g_idx + "_" + i + "_1");
                if (ele && ele != null) {
                    if (ele.className == "selected") {
                        ele.className = "default";
                        
                    }
                }            
            }
        }

 

안녕하세요. 

function 안에서 for문을 돌리는데요, 하나의 조건이 더 붙을때...가 막혀서 글 남깁니다.

 

위 내용대로 사용하는데요. pos != 1 이 아닐때...나머지 pos 에 해당하는 ele 값을 찾아서 

모두 class값을 변경합니다.(selected 일때만 default 로)

 

저 구문은 실행에 문제 없습니다. 단지 원하는 바를 얻지는 못했습니다.

 

단지, 하나 조건을 더 넣을려고 합니다.

 

for문에서 i 값을 (ele = document.getElementById(j_idx + "_" + i + "_1");) 이부분에 넣어 

활용하고 있는데요. 제가 구현하려고 하는건..

 

만약 i = 3 일때...저 i=3 인것을 제외하고 for문을 돌릴수 있을까 해서요.

i = 4 일때도 마찬가지 구요...즉, 넘어온 값의 i 값은 제외 하고 for 문을 돌릴수 있나 해서요..

 

물론, 노가다 한다 생각하고 for 문을 i 보다 적은수로 한번, 높은수로 한번..이렇게 두번 돌려야 하나..

생각해 봤는데요. i 가 어떤값이 넘어 올지도 모르는데...1~11 까지의 경우의 수로 모두 구문을 작성해 두는것은 말도 안되는거 같구요.....좀더 효과적인 방법이 있지 않을까 해서요..

 

if (pos != 1) { // 부터 새로 짜야 할거 같습니다.

 

pos 는 현재 id 값이 아닙니다. 

id 값이 3 일때..나머지 3을 제외한 1~33 을 모두 적용 하는 방법을 찾고 있습니다.

 

넘겨진 id 값( 최대 경우의 수 1~33)을 제외한 나머지에 대한 for문....

 

조언 구하고자 합니다. 

오늘도 지식 구걸합니다. 감사합니다.

 

 

이 질문에 댓글 쓰기 :

답변 1

※ https://www.w3schools.com/php/php_looping_break.asp

 

function myselected(g_idx, select_idx.....){
    if (obj.className == 'default' || obj.className == 'over') { // 선택가능한 상태
        obj.className = "selected";
        for(i = 1; i < 12; i++) {
            if (pos == i)
                continue;

 

            ele = document.getElementById(g_idx + "_" + i + "_1");
            if (ele && ele != null) {
              if (ele.className == "selected") {
                    ele.className = "default";
              }
            }
        }
    }
}

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 33
© SIRSOFT
현재 페이지 제일 처음으로