//-----------银行账户,4个数字用空格隔开----------- //-----------显示字段 class = bankNumFm; //-----------值字段class = bankNum DSDetail.bindBankNumFormat = function(bankEl){ if(!bankEl.size()){ return ; } var formatBankNum = function(value){ if(value){ value = value.replace(/(\d{4}\s*)/g,function($0,$1){ return $1.replace(/\s+$/g,"") + ' '; }); //消灭最后的空格 value = value.replace(/\s+$/,""); } return value; }; var setValue = function(fmEl,valEl,value){ value = value.replace(/[^\d]/g,""); //设置隐藏域 valEl.val(value.replace(/\s+/g,"")); //设置显示域 fmEl.val(formatBankNum(value)); }; bankEl.each(function(){ var fmEl = $(this); var valEl = fmEl.siblings(".bankNumVal"); if("onpropertychange" in this){ fmEl.bind("propertychange",function(){ setValue(fmEl,valEl,this.value); }); }else if("oninput" in this){ fmEl.bind("input",function(e){ setValue(fmEl,valEl,this.value); }); } fmEl.bind("keydown",function(e){ if ((e.keyCode >= 48 && e.keyCode <= 57) || // (e.keyCode >= 96 && e.keyCode <= 105) || //小键盘数字 e.which === 37 || e.which === 39 //左右键 || e.which === 8 || e.which === 46){ //回退、删除键 setValue(fmEl,valEl,this.value); }else{ return false; } }); //初始化 setValue(fmEl,valEl,fmEl.val()); }); }; //--------银行账户格式化--------------- DSDetail.bindBankNumFormat($(".bankNumFm"));
详细解决方案
带空格的银行账户展示输入
热度:189 发布时间:2013-08-04 18:26:15.0
相关解决方案