//原理,默認遍歷傳入的選擇器內的input[type="text"]; 獲取input的data-rule屬性,
data-rule可以使用函數里已定義的內容,
例如:<input type=
"text"
data-rule=
"d"
>;
也可以寫正則,
例如:<input type=
"text"
data-rule=
"/[^\d]/g"
>;
function
inputLimit(obj){
var
rules = {
"d"
: /[^\d]/g,
//純數字
"d."
: /[^\d.]/g,
//數字,點
"d_"
: /[^\d.]/g,
//數字,下划線
"bh"
: /[^\d|a-z|A-Z]/g,
//數字字母
"sfz"
: /[^\d|x|X]/g,
//身份證
"dh"
: /[^\d-+]/g,
//手機或座機
"mm"
: /[^\w.]/g,
//數字,點,下划線,字母
"mail"
: /[^\d._@|a-z|A-Z]/g,
//郵箱
"zh"
: /[^\u4e00-\u9fa5]/g,
//中文
"zh_en"
: /[^\u4e00-\u9fa5|a-z|A-Z]/g,
//中文或英文
"code"
: /[^\w-]/g
//組織機構代碼
};
$(obj).delegate(
'input[type="text"]'
,
'input propertychange'
,
function
() {
var
$t = $(
this
),
rule = $t.attr(
'data-rule'
) ||
''
;
if
(rule !=
''
) {
var
_rule = rules[rule] ? rules[rule] : rule,
$v = $t.val().replace(_rule,
''
);
$t.val($v);
}
});
}
//執行函數,給表單form下面的input輸入框添加輸入限制
inputLimit(
'form'
);
