jquery.form.js用法之清空form的方法


Posted in Javascript onMarch 07, 2014

本段代码摘取自jquery.form.js中,由于觉得该方法的使用性非常强,同时也可独立拿出来使用。
该段代码言简意赅可以很好的作为学习参考。

/**
 * Clears the form data. Takes the following actions on the form's input fields:
 * - input text fields will have their 'value' property set to the empty string
 * - select elements will have their 'selectedIndex' property set to -1
 * - checkbox and radio inputs will have their 'checked' property set to false
 * - inputs of type submit, button, reset, and hidden will *not* be effected
 * - button elements will *not* be effected
 */
$.fn.clearForm = function(includeHidden) {
    return this.each(function() {
        $('input,select,textarea', this).clearFields(includeHidden);   //this表示设置上下文环境,有多个表单时只作用调用的表单
    });
};
$.fn.clearFields = $.fn.clearInputs = function(includeHidden) {
    var re = /^(?:color|date|datetime|email|month|number|password|range|search|tel|text|time|url|week)$/i; // 'hidden' is not in this list
    return this.each(function() {
        var t = this.type, tag = this.tagName.toLowerCase();
        if (re.test(t) || tag == 'textarea') {
            this.value = '';
        }
        else if (t == 'checkbox' || t == 'radio') {
            this.checked = false;
        }
        else if (tag == 'select') {
            this.selectedIndex = -1;
        } 
        else if (t == "file") {
            if (/MSIE/.test(navigator.userAgent)) {
                 $(this).replaceWith($(this).clone(true));
            } else {
                 $(this).val('');
            }
       }
        else if (includeHidden) {
            // includeHidden can be the value true, or it can be a selector string
            // indicating a special test; for example:
            // $('#myForm').clearForm('.special:hidden')
            // the above would clean hidden inputs that have the class of 'special'
            if ( (includeHidden === true && /hidden/.test(t)) ||
                 (typeof includeHidden == 'string' && $(this).is(includeHidden)) ) {
                this.value = '';
            }
        }
    });
};
Javascript 相关文章推荐
js escape,unescape解决中文乱码问题的方法
May 26 Javascript
html a标签-超链接中confirm方法使用介绍
Jan 04 Javascript
JavaScript实现自动变换表格边框颜色
May 08 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
Aug 24 Javascript
Javascript函数式编程简单介绍
Oct 11 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
Nov 07 Javascript
bootstrap table分页模板和获取表中的ID方法
Jan 10 Javascript
基于vue2的table分页组件实现方法
Mar 20 Javascript
Vim快速合并行及vim 将文件所有行合并到一行
Nov 27 Javascript
Vue绑定内联样式问题
Oct 17 Javascript
vue项目首屏加载时间优化实战
Apr 23 Javascript
基于JavaScript判断两个对象内容是否相等
Jan 10 Javascript
jquery设置按钮停顿3秒不可用
Mar 07 #Javascript
jquery 实现两级导航菜单附效果图
Mar 07 #Javascript
document.addEventListener使用介绍
Mar 07 #Javascript
开发中可能会用到的jQuery小技巧
Mar 07 #Javascript
javascript匿名函数应用示例介绍
Mar 07 #Javascript
js登录弹出层特效
Mar 07 #Javascript
JavaScript通过正则表达式实现表单验证电话号码
Mar 07 #Javascript
You might like
虹吸壶煮咖啡26个注意事项
2021/03/03 冲泡冲煮
php中将汉字转换成拼音的函数代码
2012/09/08 PHP
PHP文件锁函数flock()详细介绍
2014/11/18 PHP
PHP扩展模块memcached长连接使用方法分析
2014/12/24 PHP
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
php版阿里大于(阿里大鱼)短信发送实例详解
2016/11/30 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
javascript读取RSS数据
2007/01/20 Javascript
jquery与google map api结合使用 控件,监听器
2010/03/04 Javascript
Jquery下attr和removeAttr的使用方法
2010/12/28 Javascript
动态加载jquery库的方法
2014/02/12 Javascript
js使用for循环查询数组中是否存在某个值
2014/08/12 Javascript
JavaScript中的Function函数
2015/08/27 Javascript
jQuery实用技巧必备(下)
2015/11/03 Javascript
JavaScript实现相册弹窗功能(zepto.js)
2016/06/21 Javascript
Backbone中View之间传值的学习心得
2016/08/09 Javascript
Javascript数组循环遍历之forEach详解
2016/11/07 Javascript
bootstrap模态框示例代码分享
2017/05/17 Javascript
AngularJS中使用ngModal模态框实例
2017/05/27 Javascript
实用Javascript调试技巧分享(小结)
2019/06/18 Javascript
es6中Promise 对象基本功能与用法实例分析
2020/02/23 Javascript
JavaScript实现电灯开关小案例
2020/03/30 Javascript
Vue实现Layui的集成方法步骤
2020/04/10 Javascript
js实现车辆管理系统
2020/08/26 Javascript
python模拟事件触发机制详解
2018/01/19 Python
python:pandas合并csv文件的方法(图书数据集成)
2018/04/12 Python
Python3匿名函数lambda介绍与使用示例
2019/05/18 Python
Python帮你识破双11的套路
2019/11/11 Python
Python+OpenCV实现图像的全景拼接
2020/03/05 Python
详解CSS3原生支持div铺满浏览器的方法
2018/08/30 HTML / CSS
运动会入场词100字
2014/02/06 职场文书
市场总经理岗位职责
2014/04/11 职场文书
婚庆公司计划书
2014/09/15 职场文书
乡镇遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
怎样评估创业计划书是否有可行性?
2019/08/07 职场文书
Nginx 匹配方式
2022/05/15 Servers