var _this = this
//如果函数是用var定义的私有函数,如下
var func1 = function(){ }
//那么类中其他函数都可以直接通过func1()的形式调用
//如果函数是共有的,即用this定义,如下
this.func2 = function(){ }
/*则需要得到func对像的引用,即fun中的this(注意:是fun中的).
然而到了调用者函数(如下的caller)内部时,this指的是caller函数而不再是fun,所以可以考虑在fun中定义一个私有变量 var _this = this 来保证指向的是fun
*/
//例子:在this.caller中调用类中的其他函数
this.caller = function(){
func1()//私有函数直接调用
_this.func2()//公共函数,需要fun的this的指向
}
}
//希望能帮到你
data的规则中设置表达式时可以调用当前model中的定义的函数,调用方式可以用$model.函数名如:js中定义了一个fCodeRule函数
123456
Model.prototype.fCodeRule = function(value) {if (value === 'test') {return value } elsereturn 'testabc'}
规则中可以通过$model.fCodeRule($row.val(“fName”))调用
如果是定义了一个ADM格式的公共js,要在规则中调用公共js中的数据,不能只引用js文件就可以,需要
1.引用公共的js文件
2.在model的构造函数中定义变量
3.在规则中通过$model.定义的变量.函数名
如下:
define(function(require) {var $ = require("jquery") var justep = require("$UI/system/lib/justep") var OA = require("$UI/OA/common/js/pub")var Model = function() {this.callParent() this.OA = OA }
规则中通过$model.OA.XXX()调用