这个Javascript有什么问题? “Internet Explorer无法打开互联网网站 - 操作中止”错误
问题描述:
每当我把这个JavaScript在页面中导致IE7或IE8中的this error,我不知道它有什么问题,起初它是在头部区域该页面,但我后来将其移动到身体标记后,并添加了一些谷歌搜索后推迟=延迟。这个Javascript有什么问题? “Internet Explorer无法打开互联网网站 - 操作中止”错误
如果我删除JavaScript,它一切正常。
<form name="myform" method ="POST" onsubmit="return validateForm();">
<table border="0" width="600px">
<tr>
<td>Name:</td>
<td><input name="name" type="text" id="name"/></td>
<td>Company:</td>
<td><input name="company" type="text" id="company"/></td>
<td> </td>
</tr>
<tr>
<td>Email Address:</td>
<td><input name="email" type="text" id="email"/></td>
<td></td>
<td></td>
<td> </td>
</tr>
<tr>
<td><input type="radio" value="I Agree" name="myradiobutton" />
I Agree</td>
<td> </td>
<td><input type="radio" value="I Disagree" name="myradiobutton" />
I Disagree</td>
<td> </td>
<td><input type="submit" name="submitit"" value="Submit" /></td>
</tr>
</table>
</form>
</div>
</body>
<script defer="defer" type="text/javascript">
function validateForm()
{
var x=document.forms["myform"]["email"].value;
var atpos=x.indexOf("@");
var dotpos=x.lastIndexOf(".");
if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length)
{
alert("Not a valid e-mail address");
return false;
}
}
</script>
答
我认为这个问题可能与在你的js中没有提供相应的src属性时使用defer属性有关。
尝试把validateForm()到一个脚本调用validate.js什么的,然后使用
<script defer="defer" src="validate.js" type="text/javascript"></script>
This post has more information and additional links on IE/defer
+0
是的,我相信推迟只适用于链接的脚本。无论如何,推迟是一个遗迹。现在有更好,更优雅的方式来实现同样的目标。 – Utkanos 2012-07-17 14:03:17
哪里'valbutton()从提交按钮的'的onClick =“valbutton叫做'功能(myForm的);“'? – nnnnnn 2012-07-17 13:54:54
如果在页面中只有'',是否会发生错误? – 2012-07-17 13:55:30
你的网页上是否有闪光灯?看起来像所有导致此错误的问题都与Adobe Flash有关。 – jbabey 2012-07-17 13:56:49