我正在使用JQuery UI自動填充與ASP.NET文本框來填充標籤以及值。這裏是我從ajax調用映射數據的地方:JQuery UI自動完成替換標籤的值選擇
success: function (data) {
response($.map(data, function (item) {
return {
label: item.label,
value: item.value
}
}));
}
標籤是文本,值是用於標識該行的數字。我的問題是,當用戶選擇一個選項時,文本框將用該值替換標籤。因此,如果他們選擇'John Smith',那麼文本框會從'John Smith'更改爲'1234'等。我如何操作select事件以將文本保留在文本框中?任何幫助表示讚賞。謝謝!
這裏是我的aspx頁面的更全面的觀點:
<div class="ui-widget">
<asp:TextBox ID="txbSearchKeyword" runat="server" Columns="50" />
</div>
<asp:HiddenField ID="selectedRecordId" runat="server" />
和Jquery的:
(function() {
$("#txbSearchKeyword").autocomplete
({
source:
function (request, response) {
$.ajax({
type: "POST",
url: "AutoComplete.asmx/GetAutoCompleteList",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ keywordStartsWith: request.term }),
dataType: "json",
success: function (data) {
response($.map(data.d, function (item) {
return {
label: item.label,
value: item.value
}
}));
}
});
},
minLength: 2
});
$("#txbSearchKeyword").autocomplete
({
select: function (event, ui) {
$('#selectedRecordId').val(ui.item.value);
DoSomethingwithdataAJAXfunction(ui.item.value);
}
});
})();
你可以發佈剩餘的jQuery和一些HTML嗎?沒有看到所有的代碼就很難排除故障。 – 2012-04-19 16:06:17
沒問題!請參閱我的編輯。 – Drew 2012-04-19 16:45:53