11페이지

eval을 사용하지 않고 코딩?

게시됨: 2008 06 30 16:59 23
작성자 bgre
아래와 같이 사용중입니다.
파폭에서는 eval을 사용해서는 안된다고 나오는데, 프로그래머도 아니라서 어떤식으로 수정해야 할 지 모르겠습니다.
document.getid, name을 사용하면될 것 같은데 고수님들 답변 부탁드립니다.

function agreechk(tmenu){
if ( eval("document.gisterform.agree"+tmenu+".value") == "yes" ) {
eval( "agree" + tmenu + "yes.style.display='none'" );
eval( "agree" + tmenu + "no.style.display='inline'" );
eval( "document.gisterform.agree"+tmenu+".value = 'no'" );
document.gisterform.agree_all.checked = false;
} else {
eval( "agree" + tmenu + "yes.style.display='inline'" );
eval( "agree" + tmenu + "no.style.display='none'" );
eval("document.gisterform.agree"+tmenu+".value = 'yes'");
}
}
function agreeall() {
if ( document.gisterform.agree_all.checked == false ) {
for (i=1; i < 7; i++) {
eval( "agree0" + i + "yes.style.display='none'" );
eval( "agree0" + i + "no.style.display='inline'" );
eval( "document.gisterform.agree0" + i + ".value = 'no'" );
}
} else {
for (i=1; i < 7; i++) {
eval( "agree0" + i + "yes.style.display='inline'" );
eval( "agree0" + i + "no.style.display='none'" );
eval( "document.gisterform.agree0" + i + ".value = 'yes'" );
}
}
}

Re: eval을 사용하지 않고 코딩?

게시됨: 2008 06 30 18:16 40
작성자 정승원
제가 자바스크립트에 대해서 잘 아는 것은 아니지만,

if ( eval("document.gisterform.agree"+tmenu+".value") == "yes" ) {

eval() 함수가 포함된 위와 같은 부분들을 전부 아래처럼 고치면 되지 않을까 싶습니다.

if (document.gisterform['agree' + tmenu].value == 'yes') {