javascript代码无法在IE上运行

时间:2012-02-12 20:05:00

标签: javascript javascript-events

以下代码仅适用于Firefox,而不适用于IE或Chrome。

<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>

有什么建议吗?

3 个答案:

答案 0 :(得分:3)

我很确定您使用的代码是Mozilla专有的。

document.getElementById('daforma').submit();出了什么问题?

答案 1 :(得分: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

答案 2 :(得分:1)

如果您只是在页面加载时尝试提交表单,则可以使用类似的内容。

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