我在一个jQuery插件中有以下代码:
$.fn.myForm = function() {
return this.each(function() {
var myForm = new MyForm(this);
$.data(myForm, 'myForm');
});
};
我认为这样做会使我能够访问myForm
的内部函数,例如getForm
var MyForm = function() {
//...
function getForm() {
return 'Hi';
}
}
但是当我尝试从插件外部访问myForm
时,我会得到undefined
:
$('#test').myForm();
$('#test').data('myForm')
> undefined
这里我做错了什么?
$('#test').myForm()
,然后就搞定了。 - Soatl$.data(this, 'myForm', myForm);
也可以工作。-$.data(myForm, 'myForm')
的问题在于没有提供元素来附加myForm
。 - Jonathan Lonowski