2012-02-12 64 views
0

下面的代碼只能在Firefox上運行,而不能在IE或Chrome上運行。JavaScript代碼不能在IE上運行

<form action="advertise2.php" method="get" id="daforma"> 
    <input type="submit" name="submit" value="" /> 
</form> 
<script type="text/javascript"> 
var evt = document.createEvent('Event'); 
evt.initEvent('submit', true, true); 
document.getElementById('daforma').dispatchEvent(evt); 
</script> 

有什麼建議嗎?

+0

你能定義你想要做什麼嗎? – 2012-02-12 20:36:04

回答

1

如果您只是試圖在頁面加載後立即提交表單,則可以使用類似這樣的內容。

<form action="advertise2.php" id="form"></form> 
<script type="text/javascript"> 
    window.onload = function(){document.getElementById('form').submit();} 
</script> 
+0

謝謝,它工作良好 – Pipo 2012-02-12 20:43:44

3

我很確定你使用的代碼是Mozilla專有的。

document.getElementById('daforma').submit();怎麼了?

+0

感謝您的回覆,但它仍然不能正常工作 – Pipo 2012-02-12 20:28:09

2

兩件事情......

1)使用Fiddler檢查介質類型/ MIME,以確保你沒有聲明UTF。這是許多安靜的IE漏洞之一。

如果服務的text/html 不要使用 ...

header('content-type: text/html; charset=utf-8'); 

... 改用 ...

header('content-type: text/html'); 

2) Internet Explorer中有被告知一個事件是一個事件。

var e = document.createEvent('Event'); 
if (!e) {e = window.event;}//IE6 
相關問題