我试图从form.submit调用我的jquery小部件api的公共方法但是我没有成功。任何人都可以帮助我吗?
_cleanFormFields: function() {
console.log("ok");
},
_addFormListener: function(map, marker) {
var form = $(".add-form").clone().show();
form.submit(function (event){
event.preventDefault();
_cleanFormFields();
}
}
为什么这不起作用?浏览器的控制台引发“Uncaught ReferenceError:_cleanFormFields未定义”异常
答案 0 :(得分:1)
_cleanFormFields
是某个对象的属性,对吧?所以你不能直接调用它,你需要通过你的对象引用它:
yourObject._cleanFormFields();
或者,根据_addFormListener()
的调用方式,您可以使用this
。但是,您需要保留this
_addFormListener()
的引用,因为.submit()
回调this
中的内容将成为相关的表单元素:
_addFormListener: function(map, marker) {
var form = $(".add-form").clone().show(),
self = this;
form.submit(function (event){
event.preventDefault();
self._cleanFormFields();
}
}