parent.document.getElementById 질문입니다. 채택완료

9년 전 조회 3,871

현재 자식페이지의 한 a태그 부분에 onclick를 걸어서 함수를 하나 작성을 했습니다. 

<a onclick="a<?php echo  $list[$i]['wr_id']?>" href="<?php echo $list[$i]['href'] ?>"> 

se라는 함수 괄호에는 해당 글의 wr_id값을 넣었습니다.

(한 글의 wr_id 값이 1이라면 onclick의 값은 현재 se1인 상황)

그리고 부모페이지에 반응을 받아야하는 a 태그에 id를 만들었습니다. 

이 id값에도 해당 글의 wr_id를 넣어 설정을 했습니다.

<a id = 'a<?php echo $list[$i]['wr_id']>'>

그 후 자식페이지에 


function se(no){

parent.document.getElementById("a").className='se'; 

};

이렇게 스크립트를 넣으면  클릭시 부모페이지에 a라는 id를 가진 것이 se로 변경하여라..

라는 것이 아닌가요??

아무리해도 반응이 없네요 ㅜㅜㅜ

답변 1개

채택된 답변
+20 포인트

id가 보니까 a만 있는게 아니라 <?php echo $list[$i]['wr_id']>라는 값이 붙어서 생성되게 되어 있는데 이 부분을 function 부분에 no를 넘기니까 id값에 function se(<?=$list[$i]['wr_id']?>)값을 던져서

parent.document.getElementById("a"+no).className='se';로 반응되도록 처리하셔야 할겁니다.

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

답변에 대한 댓글 3개

뒤에 +no를 한 뒤 만약 부모페이지에서 바뀐 class의 style을 주고 싶다면 그냥

style{
se{ ???}
}
이런식으로 주면 되나요 ???
아니요 스크립트로 구현하셔서 반영해 주셔야 해요

function se(no){

parent.document.getElementById("a"+no).className='se';

};

이런식이 되겠네요
네 거기까지는 이해했습니다. 그럼 a에서 se로 변한 것들의 css를 추가할려면 그냥 간단하게
function se(no){

parent.document.getElementById("a"+no).className='se';

$(this).css('background', 'red');
};

이런식으로 말고 따로 부모페이지에서 스크립트를 만들어야하는건가요 ??

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

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

로그인
🐛 버그신고