C# 设置_renderItem时单击/获取未定义的ui.item
我正在使用jqueryautocomplete进行编码,我的目的只是用[Image][Name]显示一个自定义视图。当我只是在标准renderItem中使用autocomplete代码而没有设置它时,autocomplete工作得很好,但没有我想要显示的图像。然而,当我设置_renderItem时,它完美地显示项目,但当选择/聚焦它时,我得到了ui.item未定义。你能帮帮我吗?这是我的密码: 使用Jquery ui 1.11.2和Jquery 1.10.2:C# 设置_renderItem时单击/获取未定义的ui.item,c#,jquery,asp.net-mvc,autocomplete,C#,Jquery,Asp.net Mvc,Autocomplete,我正在使用jqueryautocomplete进行编码,我的目的只是用[Image][Name]显示一个自定义视图。当我只是在标准renderItem中使用autocomplete代码而没有设置它时,autocomplete工作得很好,但没有我想要显示的图像。然而,当我设置_renderItem时,它完美地显示项目,但当选择/聚焦它时,我得到了ui.item未定义。你能帮帮我吗?这是我的密码: 使用Jquery ui 1.11.2和Jquery 1.10.2: $("#iSearch").aut
$("#iSearch").autocomplete({
source: function (request, response) {
var psField = "produtoNome";
$.ajax({
url: "/Search/PesquisaParcial",
data: "{'psField':'" + psField + "', 'psTerm':'" + request.term + "'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
success: function (data) {
//{ label: item.ProdutoFoto, value: item.ProdutoNome }
response($.map(data, function (item) {
return { label: item.ProdutoFoto, value: item.ProdutoNome, data: item };
}));
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
},
focus: function (event, ui) {
$("#iSearch").val(ui.item.value);
return false;
},
select: function (event, ui) {
$("#iSearch").val(ui.item.value);
return false;
},
minLength: 2
}).autocomplete("instance")._renderItem = function (ul, item) {
var produtoFoto = item.data.ProdutoFoto == null ? "../Images/semfoto.png" : "../Images/" + item.data.ProdutoFoto;
var FotoHtml = "<img src='" + produtoFoto + "' width='35' height='30' />";
return $("<li>")
.append("<a>" + FotoHtml + " " + item.value + "</a>")
.appendTo(ul);
};
我发现出了什么问题
我将在这里发布,因为它可以帮助其他有同样问题的人。我是如何解决这个问题的:
通过nuget jquery 1.11.2和jquery ui 1.11.2安装
我在index.cshtml代码中直接链接到jss和css,然后我从那里删除了它们
在BundleConfig.cs中,我刚刚插入了对jquery ui的引用:
bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
"~/Scripts/jquery-ui-{version}.js"));
将javascript自动完成代码放入Index.cshtml脚本部分,如下所示:
@节脚本{
…Javascript自动完成代码。。。
}
自动完成工作快乐!
你能分享一些样品数据吗!这是一个简单搜索的答案。JSon如下:[{Type:0,Produtoid:138,ProdutoNome:camiseta ecológica,ProdutoFoto:null,Feiranteid:30,FeiranteNome:Aluísio de Paula,descripcaofirante:camiseta ecológicas de garrafas pet,EnderecoFeirante:,categoriaaid:8,categoriaaid:1,catorianome:Moda,cateriapai:null,descripcacatoria:Moda,barracaid:30,barracoa:Barraca:30,barracalatitude:-25.427026,Barracalalongity:-49.271824,FeiraId:1,FeiraNome:Feira do Largo da Ordem}]看起来很好-确实如此。通过fiddle它很好,但是在我的代码中,我无法单击,焦点事件没有设置dropdownlist值。我已经搜索了错误的库,并尝试重新安装jquery。我正在使用VIsual Studio 2013。你知道可能是什么问题吗?