2013-11-23 1 views
-1

이 구문에 대한 잘못된 무엇 :.자바 스크립트 오류 document.getElementById를 ('X') style.display를 = '없음'

<li onmouseover="" onmouseout="document.getElementById('evidence').style.display='none';"> 
: PHP
echo '<li onMouseOver="" onMouseOut="document.getElementById(\''.$boxrow.'\').style.display=\'none\';">'; 

그리고 HTML 페이지 소스 코드에

IT는 잘 작동하지만이 스크립트를 제거하면 오류를 일으키는 스크립트가 제대로 작동합니다. 이 스크립트 이하와 작업을 중지 할 것을

우선이다 : 당신은 여전히 ​​페이지에 코드를 구문 분석하지 않은 경우

header("Location: index.php?module=service&no=".$_POST['id']."&"); and next after ... 
+2

아무것도하지만, 당신이 정말로 인라인 문을 사용하여 싶지 않아; JS 명령이 스크립트 내에서 중앙에서 처리되고 HTML 사이에 혼란스럽지 않도록 코드 리팩토링을 고려하십시오. 많은 장점, 유지 보수 용이성 및 코드의 청결성이 두 가지이지만 두 가지가 있습니다. – Utkanos

+0

외부에 기능을 만들겠습니까? onmouseout = "dohide ('증거')처럼? 결과는 동일합니다. :-( – Martin

+0

헤더 코드가 에코 또는 인쇄물 위에 있어야합니다. 그렇지 않으면 PHP에서 오류가 발생합니다. – SHIN

답변

1

PHP 헤더 리디렉션에만 작동합니다. 대신 자바 스크립트로 리디렉션 해보세요.

또한 인라인 자바 스크립트를 사용하지 않는 것이 좋습니다. 더 나은 :

편집 : 분명

window.onload = function() { 
    li.onmouseout=function(){ 
     document.getElementById('evidence').style.display='none'; 
    }; 
}; 
+0

물론 이전 코드는 흔들림이없는 자바 스크립트 편집 됨 –

+0

헤더 리다이렉트는 에코 또는 프린트 문의 상단에 있어야합니다. – SHIN

+0

SHIN : 내가 말한 내용과 다른가요? –

관련 문제