2013-11-23 62 views
-1

什麼是錯的這個語法: PHPJavaScript錯誤的document.getElementById( 'X')的style.display = '無'

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

而在HTML頁面的源代碼:

<li onmouseover="" onmouseout="document.getElementById('evidence').style.display='none';"> 

它工作正常,但腳本之後會導致錯誤,如果我刪除此腳本一切工作正常。

首先,這是什麼下面的腳本和停止工作是:如果你還沒有解析你的頁面上的任何代碼

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

沒有什麼明顯的,但你真的不希望使用內聯語句是;考慮重構你的代碼,以便像這樣的JS指令可以在腳本中集中處理,而不會混淆在HTML中。這裏有很多優點,易於維護和清晰的代碼,只有兩個。 – Utkanos

+0

你的意思是在外面做一個功能? like onmouseout =「dohide('evidence')」?結果是一樣的。:-( – Martin

+0

標題代碼應該位於任何回顯或打印的頂部,否則php會拋出一個錯誤 – SHIN

回答

1

PHP頭重定向只適用。嘗試通過JavaScript重定向。

此外,不使用內嵌JavaScript是一種更好的做法。更好:

編輯:

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

當然不是,之前的代碼是一個例子unobstrusive Javascript。編輯 –

+0

標題重定向應該在任何回顯或打印語句的頂部。 – SHIN

+0

SHIN:這與我所述的不同嗎? –

相關問題