[英]How can I make jQuery UI Autocomplete work in an older version of jQuery UI?
我试图将自动完成的小部件添加到我的网页中,这是一种个性化的小部件。 在对自己的配置遇到一些问题之后,我决定直接在网页中尝试该官方示例 ,做所有我在该网页上阅读的内容,然后替换掉
.autocomplete( "instance" )._renderItem = function( ul, item ) {
return $( "<li>" )
.append( "<div>" + item.label + "<br>" + item.desc + "</div>" )
.appendTo( ul );
};
有了这个
.data("uiAutocomplete")._renderItem = function (ul, item) {
return $("<li>")
.append("<div>" + item.label + "<br>" + item.desc + "</div>")
.appendTo(ul);
};
因为我使用的是jQuery UI 1.10.4,但无法更新它(我的老板不希望我这样做)。 我无法使该示例正常工作,并且我知道,如果我使该示例正常工作,那么我将不会遇到任何使它适应其需要执行的工作的问题。
拜托,你知道如何使它工作吗? 提前致谢。
好吧,最后我放弃了。 我克服这种情况的方法是将DTO转换为JSON,然后将其发送到浏览器,使其具有Autocomplete期望的格式。 格式包含三个字段:
{
id: ...,
label: ...,
value: ...
}
之后,我以这种方式配置了自动完成功能:
$("#<%= nuevoPadrePem.ClientID %>").autocomplete({
minLength: 6,
source: function (request, response) {
var term = request.term;
var result = [];
$.ajax({
url: 'PMENUEVAVERS.aspx/GetResultadosBusqueda',
data: JSON.stringify({ texto: term }),
type: 'POST',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (dtos) {
response(dtos.d);
}
});
},
select: function (event, ui) {
var dto = ui.item;
$("#<%= hdSelectedNuevoPadrePem.ClientID %>").val(dto.id);
$("#<%= nuevoPadrePem.ClientID %>").css('color', '#00BE00');
}
})
它的工作没有问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.