이유는 매우 간단합니다. DOM에 ID가 msg_box인 div 태그가 없습니다.
해결 방법:
모든 페이지에 공통되는 header.tpl.html 헤더 파일을 작성합니다.
<script> <br>function changMenu(index){ <br>if(typeof getElementById("msg_box") == "object"){ <br>/ / msg_box 객체가 존재하면 페이지의 객체를 새로 고칩니다. <br>showMenu(index); <br>}else{ <br>//존재하지 않으면 Ajax <br>창을 사용하여 새로 고친 페이지로 리디렉션합니다. location = "/ index.html"; <br>} <br>} <br></script>
그러나 index.html 프로젝트에는 동일한 성격의 4개 페이지가 있습니다. 그 중 새로 고치려면 Ajax가 필요합니다. 사용자가 세 번째 열을 클릭하면 index.html로 돌아갈 수 있지만 세 번째 열의 내용을 새로 고칠 수는 없습니다. 현재로서는 두 가지 해결 방법이 있습니다.
옵션 1:
1단계:
모든 페이지에 공통되는 header.tpl.html 헤더 파일을 작성합니다.
<script> <br>function changMenu(index){ <br>if(typeof getElementById( "msg_box") == "object"){ <br>//msg_box 개체가 존재하는 경우 페이지 개체 새로 고침 <br>showMenu(index) <br>}else{ <br>//있는 경우 새로 고침 존재하지 않습니다. Ajax <br>window.location = "/index.html?type=" index <br>} <br>} <br></script>
을 사용하여 새로 고친 페이지로 이동합니다. 🎜> 2단계:
showMenu 기능 개선
function showMenu (index){
if(typeof getElementById("msg_box") == "object"){
//msg_box 개체가 존재하는 경우 페이지 개체를 새로 고칩니다
... ...
}else{
url = window.location.href;
reg = /^(.*)/index.html?type=d$/gi;
if(reg. test(url)){
//매개변수 페이지의 URL과 일치하는 경우. 그런 다음
index = url.substr(url.length - 1)
......
}
}
}
을 가져옵니다. 옵션 2:
JS의 쿠키 기능을 호출하여 매개변수 전달
모든 페이지에 공통되는 헤더 파일 header.tpl.html에 작성:
저자별 최신 기사
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31