//-----------银行账户,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"));