Skip to main content
 首页 » 编程开发

表单自动提交代码及表单提交常见错误“对象不支持此属性”解决

15年前 (2009-10-05)23060

 这两天做表单自动提交时出现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);//以毫秒为单位的.1000代表一秒钟.根据你需要修改这个时间.

//-->

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

 

评论列表暂无评论
发表评论
新浪微博
微信