我做的窗体代码,因为有很多的形式需要简化掩盖领域的forms.For我做了封装领域的ID,并指定具体类的方式每个人的互动。的JavaScript对象jQuery选择
我有代码:
var Mask=(function() {
var me=this;
var eventInterator;
var func;
var fields;
function Mask(fd,ev,fn){
this.setFunction(fd);
this.setFunction(fn);
this.setEvent(ev);
this.execute();
}
Mask.prototype.setFields = function(fd){
fields=fd;
}
Mask.prototype.setFunction= function(fn){
func=fn;
}
Mask.prototype.setEvent= function (ev){
eventInterator=ev;
}
Mask.prototype.execute = function(){
for (var i=0;i<fields.length;i++){
loadEvent(fields[i]);
}
}
function loadEvent(field){
$(me+' '+field).on(eventInterator,function() {
func();
});
}
return Mask;
})();
当我运行后续代码:
function doSomeThing(){
alert("hi");
}
var fields = ['#field1','#field2','#field3','#field4'];
var mask = new Mask(fields,"keyup",doSomeThing);
我收到错误:语法错误,不能识别的表达式:[对象窗口]
如何能我为jquery选择器设置了JavaScript类的对象?
什么线是错误的? ''到this.setFields(FD); – atmd
当你纠正'this.setFunction(FD),会发生什么'? –
不相关的问题,但我没有看到你的'Mask'抽象是如何有用VS'$( '#字段1,#字段2,#字段3,#字段4')KEYUP(DoSomething的);'或'$(场.join(','))。keyup(doSomeThing)'如果选择器必须是动态的。 – plalx