怎么清空form中除readonly以外的数据
2016-07-05 19:02
357 查看
我们在做页面时,有些数据是不会让用户修改的。我们会在代码上加上 属性 readonly="readonly",虽然加上了readonly,
但是属性为type="reset"的"取消"按钮会把页面上所有的数据都清除掉,那么怎么做能把属性不为 readonly="readonly"
且是用户填写的数据清除呢?我说一下我的方法。
页面代码:
<input type="reset" value="取消" >
改为:
<input type="button" value="取消" onclick="cancelDatas(this)">
js中取消按钮函数:
一般数据在<form>中,所以找到form标签就行了,我的逻辑就是这样的,方法只清空type=="text"
的数据,如果清除下拉框等其他属性的值,逻辑是一样的。
如果有更好的方法,希望大神多多指导。我学习java的时间不长,需要更多的java知识才能成长。
但是属性为type="reset"的"取消"按钮会把页面上所有的数据都清除掉,那么怎么做能把属性不为 readonly="readonly"
且是用户填写的数据清除呢?我说一下我的方法。
页面代码:
<input type="reset" value="取消" >
改为:
<input type="button" value="取消" onclick="cancelDatas(this)">
js中取消按钮函数:
//取消按钮 function cancelDatas(button) { //获取按钮的父类 var form=button.parentNode; var tagname=null; //循环 直到找到标签为FORM的值 while(tagname!="FORM" ){ form=form.parentNode; if(form==null){break;} //获得元素的标签名 tagname=form.tagName; } if(form!=null){ for (var i = 0; i < form.length; i++) { if(form.elements[i].type=="text" && form.elements[i].getAttribute("readonly")!="readonly" ){ form.elements[i].value=""; } } }else { button.type="reset"; } }
一般数据在<form>中,所以找到form标签就行了,我的逻辑就是这样的,方法只清空type=="text"
的数据,如果清除下拉框等其他属性的值,逻辑是一样的。
如果有更好的方法,希望大神多多指导。我学习java的时间不长,需要更多的java知识才能成长。
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- Extjs4.0 最新最全视频教程
- Javascript中toFixed方法的改进
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 5个常见可用性错误和解决方案
- 最后一次说说闭包
- Ajax
- js数组实现图片轮播
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法