我想通过在updatepanel中的转发器“repAbc”中使用带有webservice的jquery来执行自动完成,以获得文本框控件“txtAbc”。自动完成功能仅在updatepanel的回发之前有效。回发后,它无法正常运行。
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Repeater ID="repAbc" runat="server" OnItemCommand="repAbc_ItemCommand"
OnItemDataBound="repAbc_ItemDataBound">
<ItemTemplate>
<asp:TextBox ID="txtAbc" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
<script type="text/javascript">
$(function () {
$("[id$=txtAbc]").autocomplete({
source: function (request, response) {
$.ajax({
url: '<%=ResolveUrl("~/Services.asmx/GetAbcMethod") %>',
data: "{ 'prefix': '" + escape(request.term) + "', 'varType':'eqType'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
success: function (data) {
response($.map(data.d, function (item) {
return {
value: item
}
}));
},
error: function (response) {
alert(response.responseText);
},
failure: function (response) {
alert(response.responseText);
}
});
},
minLength: 1
}); });
</script>
答案 0 :(得分:0)
我通过添加pageLoad()函数解决了这个问题。
<script type="text/javascript">
function pageLoad() {
$(function () {
// Textbox Autocomplete function here...
});
}
</script>