HTML中的input type="reset"标签失效(不起作用)的可能原因。
(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )
使用<html:reset>标签,有时候我们会发现reset按钮失效,点击该按钮并不能清空输入框。
原因在此:
w3c网站有这样的描述(http://www.w3school.com.cn/htmldom/dom_obj_reset.asp)
"在 HTML 表单中 <input type="reset"> 标签每出现一次,一个Reset对象就会被创建。当重置按钮被点击,包含它的表单中所有输入元素的值都重置为它们的默认值。默认值由 HTML value 属性或 JavaScript 的 defaultValue 属性指定。"
意思就是如果这个textarea如果设置了value属性的值,那么reset按钮就会恢复textarea到这个value属性的值,而不是空。
结论如下:
reset并不是清空输入框的值,而是将输入框的值恢复到value属性所指定的值。
看以下的例子就清楚了。将下面的HTML代码保存为一个.html文件,用浏览器打开,修改输入框的内容后,点击reset按钮,即可看到效果。
<form>
<input type="textarea" value="defaultValue"/>
<input type="reset" />
</form>
但是查询的结果页面我们有时候又希望value属性是有值的(上次查询的输入条件),那么我们就不能使用reset标签来实现清空功能了,注意是清空。
模拟的办法如下:使用button标签替代reset标签,利用js将该textarea的值置空。
原因在此:
w3c网站有这样的描述(http://www.w3school.com.cn/htmldom/dom_obj_reset.asp)
"在 HTML 表单中 <input type="reset"> 标签每出现一次,一个Reset对象就会被创建。当重置按钮被点击,包含它的表单中所有输入元素的值都重置为它们的默认值。默认值由 HTML value 属性或 JavaScript 的 defaultValue 属性指定。"
意思就是如果这个textarea如果设置了value属性的值,那么reset按钮就会恢复textarea到这个value属性的值,而不是空。
结论如下:
reset并不是清空输入框的值,而是将输入框的值恢复到value属性所指定的值。
看以下的例子就清楚了。将下面的HTML代码保存为一个.html文件,用浏览器打开,修改输入框的内容后,点击reset按钮,即可看到效果。
<form>
<input type="textarea" value="defaultValue"/>
<input type="reset" />
</form>
但是查询的结果页面我们有时候又希望value属性是有值的(上次查询的输入条件),那么我们就不能使用reset标签来实现清空功能了,注意是清空。
模拟的办法如下:使用button标签替代reset标签,利用js将该textarea的值置空。
下一篇:垂直栅格和渐进式行距应用举例