这两天做表单自动提交时出现JS错误:对象不支持此属性。下面是表单自动提交代码:
<form id="form1" name="form1" method="post" action="?">
<input name="subject" id="subject" type="text" value="测试标题" size="20">
<textarea name="info" id="info" cols="80" rows="2">测试内容</textarea>
<input name="submit" type="submit" value="提交"><!-- 将name="submit" 改为 name="Submit" 注意大小写-->
</form>
<script>
<!--
function sub(){
document.form1.submit();
}
setTimeout(sub,6000);
//-->
</script>
=========================================================================================
经再三测试发现,原来是<input name="submit" type="submit" value="提交">作怪。在一个完整表单中,不应有名字为action或submit的标签,否则将会产生“对象不支持此属性和方法”的ie错误。如代码<input name="submit" type="submit" value="提交">在表单中是不允许出现的,而Action和Submit则是允许的,因为JavaScript是区分大小写。所以将<input name="submit" type="submit" value="提交">修改为<input name="Submit" type="submit" value="提交"> 成功执行,完整无误代码如下:
<form id="form1" name="form1" method="post" action="?">
<input name="subject" id="subject" type="text" value="测试标题" size="20">
<textarea name="info" id="info" cols="80" rows="2">测试内容</textarea>
<input name="Submit" type="submit" value="提交">
</form>
<script>
<!--
function sub(){
document.form1.submit();
}
setTimeout(sub,6000);//以毫秒为单位的.1000代表一秒钟.根据你需要修改这个时间.
//-->
</script>