【发布时间】:2014-02-04 11:06:52
【问题描述】:
我将复杂的 JSON 数据传递给 jQuery 自动完成插件。它工作正常很好,所以它显示了Products 的列表。
现在我想以某种方式获得已包含在 JSON 数据中的 Price,当我从 autocomlete 列表中选择产品时,我想用 Price 填充 input 标记。
如果可以,我真的无法做到。我知道数据已经在 JSON 中了,但是如何获取呢?
有什么线索吗?
这里是用于 jQuery 自动完成插件的 JS
function CreateAutocomplete() {
var inputsToProcess = $('[data-autocomplete]').each(function (index, element) {
var requestUrl = $(element).attr('data-action');
$(element).autocomplete({
minLength: 1,
source: function (request, response) {
$.ajax({
url: requestUrl,
dataType: "json",
data: { query: request.term },
success: function (data) {
response($.map(data, function (item) {
return {
label: item.Name,
value: item.Name,
realValue: item.UID
};
}));
},
});
},
select: function (event, ui) {
var hiddenFieldName = $(this).attr('data-value-name');
$('#' + hiddenFieldName).val(ui.item.UID);
}
});
});
}
要明确item.LastPrice 有Price 数据。
和HTML
@Html.AutocompleteFor(x => x.ProductUID, Url.Action("AutocompleteProducts", "Requisition"), true, "Start typing Product name...", Model.Product.Name)
【问题讨论】:
标签: javascript asp.net-mvc json autocomplete jquery-autocomplete