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