//原理,默认遍历传入的选择器内的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');