테스트 사이트 - 개발 중인 베타 버전입니다

성격이 지달맞군요? 채택완료

sIr어드민 3년 전 조회 1,603

네 그렇습니다.

 

코드보면 개발자가 아니라 여기저기 짜집기해서 복잡하고

더 좋은 방법을 모르니

코드도 지달맞습니다. ㅠㅠ

여기저기 낑겨넣어보고 되면 그걸로 만족이다 보니 ㅋ

안되는게 하두 많아서 당시는 무조건 되면 좋아하다가

그러다 나중에 보면 눈에 마구 거슬립니다.

 

아래 코드보면 네임이 다른 생략된 내용이 20개쯤있습니다.

이거 이렇게 무식하게 늘어놔야 할까요?

 

function counting() {

    var elements = document.getElementsByName('img_url[]');
    for( var i = 0 ; i < elements.length; i++ ) {
        elements[i].setAttribute("id","img_url"+ ( i ) );
    }
    var elements = document.getElementsByName('img_show');
    for( var i = 0 ; i < elements.length; i++ ) {
        elements[i].setAttribute("id","img_show"+ ( i ) );
    }

 

이하 생략

 

}

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

답변 1개

채택된 답변
+20 포인트

항상 고민이 많으시군요..

개발자로서 좋은 자질이 있으십니다.

 

우선 반복되는 패턴들을

form 태그로 감싸시고, id값을 부여합니다.

</p>

<p><form id="myform"></p>

<p>......</p>

<p></form></p>

<p>

 

아래 코드 처럼 form안에 있는 태그명을 불러와서 접근합니다.

</p>

<p>function counting() {</p>

<p> </p>

<p>    var inputs = document.getElementById("myform").elements;</p>

<p> </p>

<p>    for( var ide = 0; ide < inputs.length; ide++ )</p>

<p>    {</p>

<p>       </p>

<p>        el_name = inputs[ide].name;</p>

<p> </p>

<p>        var elements = document.getElementsByName(el_name);</p>

<p>        for( var i = 0 ; i < elements.length; i++ ) {</p>

<p>            //elements[i].setAttribute("id",el_name+""+ ( i ) );</p>

<p>            // 이부분은 적절하게 패턴을 찾으셔서 응용하셔야합니다. 그대로 하시면 잘 안됩니다.</p>

<p>        }</p>

<p>    }</p>

<p> </p>

<p>}</p>

<p>

 

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

답변에 대한 댓글 1개

s
sIr어드민
3년 전
아유 감사합니다~ 쏙쏙 이해가 되네요 ㅎ고맙습니다.
for( var i = 0 ; i < index; i++ ) {
document.getElementsByName('image[]')[i].setAttribute("id","image"+ ( i ) ); 요렇게해서 for문을 줄였습니다. 내 실력이 안돼서 ㅋ

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

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

로그인