我正在使用jQuery v1.8.3和jQuery UI v1.9.2。我已经实现了Autocomplete部件是这样的:为什么jQuery.data的行为与jQuery UI options-events不同?
$('#input_id').autocomplete({
create: function (event, ui) {
// Initialize data
$(this).data('custom', { property1: 'Hello', property2: { num: 1, funct: function() { ... return value } });
alert($(this).data('custom').property1) // Display 'Hello'
},
select: function(event, ui) {
alert($(this).data('custom').property1) // Display 'Hello'
},
source: function(request, response) {
alert($(this).data('custom').property1) // Display 'undefined'
alert(this.data('custom').property1) // I get 'TypeError: this.data is not a function'
}
});
为什么在source
选项我得到undefined
而在create
和select
事件,我得到Hello
?我应该如何正确访问search
选项上下文中的number
属性,以获得Hello
?
哪里jQuery的包装为 “本”? – kidwon
@kidwon - 对不起,你用“jQuery wrapper”究竟意味着什么? – user12882
我想你最后一次提醒你是在没有jQuery对象的情况下调用jQuery函数,对不对? – kidwon