对jquery val 获取input 文本框值进行扩展

简介: 因项目需要,直接 以$(文本框name名称).value() 形式获取 或者 设置 其值,原jquery 自带不是很能满足需要,现在 进行扩展插件 fox.风来了 ;(function($,window,document,undefined){ $.fn.value = function(options) { var _select

因项目需要,直接 以$(文本框name名称).value() 形式获取 或者 设置 其值,原jquery 自带不是很能满足需要,现在 进行扩展插件

fox.风来了

;(function($,window,document,undefined){
        $.fn.value = function(options) {
                var _selector=this.selector,$this=$(_selector),val;
                if($this.length<=0){
                        var first = _selector.substr(0,1);
                        if("#" === first || "." === first){
                                $this = $(_selector);
                        } else {
                                $this = $("[name='" + _selector + "']");
                        }
                }
                if(options===undefined){
                        if($this.eq(0).is(":radio")) { //单选按钮
                                val =$this.filter(":checked").val();
                        } else if($this.eq(0).is(":checkbox")) { //复选框
                                val='';
                                $this.filter(":checked").each(function(i){
                                        val+=(i==0?'':',')+$(this).val()
                                });
                        } else {
                                val = $this.val();
                        }
                        //判断是否是数值文本框
                        if($this.attr('type')=='number'){
                                if(isNaN(val)){
                                        val=0;
                                }else if(val==''){
                                        val=0;
                                }
                        }
                }else{
                        //判断是否是数值文本框
                        if($this.eq(0).is(":radio")) {
                                $this.filter("[value='" + options + "']").each(function () {
                                        this.checked = true
                                });
                                return true;
                        }else if($this.eq(0).is(":checkbox")){
                                if(!$.isArray(options)&&options&&options.indexOf(',')>0){
                                        $this.val(options.split(','));
                                }
                                return true;
                        }else{
                                $this.val(options);
                        }
                        return true;
                }
                return val;
        }
})(jQuery,window,document);

使用方法
1.获取值
   $('test').value()
   页面中有 test 文本框时就获取该值

2.设置值
$('test').value('内容')


支持,type=text,radio,checkbox,textarea,select

目录
相关文章
|
4月前
|
JavaScript 前端开发
如何在Vue2.X/Vue3.X项目引入jQuery,以及增加jQuery.easing扩展?让你的动画效果更加丝滑!
如何在Vue 2或Vue 3项目中引入jQuery及其动画扩展库jQuery.easing,以实现更丰富的动画效果。
200 0
如何在Vue2.X/Vue3.X项目引入jQuery,以及增加jQuery.easing扩展?让你的动画效果更加丝滑!
|
6月前
|
JavaScript
jquery在光标位置插入内容指定内容(input、textarea)通用
jquery在光标位置插入内容指定内容(input、textarea)通用
42 0
|
JavaScript 前端开发
前端基础 -JQuery之val,text,html
前端基础 -JQuery之val,text,html
85 1
|
JavaScript
jQuery 回车换行、input悬浮全选...
jQuery 回车换行、input悬浮全选...
76 0
|
JSON JavaScript 数据格式
jQuery数据结构渲染(3):文本和input/textarea框赋值
jQuery数据结构渲染(3):文本和input/textarea框赋值
57 1
|
JavaScript BI
jQuery根据填写的input的数值导出excel表格
jQuery根据填写的input的数值导出excel表格
64 0
|
JavaScript
jQuery动态生成input填写时间值并且提交给后端
jQuery动态生成input填写时间值并且提交给后端
72 0
|
JavaScript
jquery动态生成input,并且限制生成个数
jquery动态生成input,并且限制生成个数
55 0
|
JavaScript
jQuery点击按钮,生成input输入框
jQuery点击按钮,生成input输入框
66 0
|
JavaScript
jQuery val(); input 获取与设置默认输入内容
jQuery val(); input 获取与设置默认输入内容
74 0