我试图从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();
}
}
为什么这不起作用??浏览器控制台引发"未捕获的引用错误:未定义_cleanFormFields"异常
_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();
}
}