JQuery自动完成asp.net

时间:2015-12-04 10:07:50

标签: c# jquery asp.net

我正在尝试在TextBox页面上为.aspx实施自动完成功能。这就是我尝试过的:

<head runat="server">

<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"/>
 <script type="text/javascript"src="//code.jquery.com/jquery-1.10.2.js"> </script>
 <script type="text/javascript" src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

 <script type="text/javascript">
  $(function() {
   var availableTags = [
    "IT",
    "Marketing",
    "HR",
    "Accounting",
    "Management"

];
$( "#TextBox1" ).autocomplete({
  source: availableTags
});
 });
</script>

</head>



<asp:TextBox ID="TextBox1" runat="server" BackColor="White"   ForeColor="Black" ></asp:TextBox>

我没有收到任何错误或其他任何错误,但自动完成功能根本没有显示。有什么建议我做错了吗?

1 个答案:

答案 0 :(得分:2)

也许是因为在asp.net上,您的控件会在呈现为ID时生成自己的HTML,因此您的脚本

$( "#TextBox1" ).autocomplete({
  source: availableTags
});

找不到ID,因为它通常会呈现为

<input type="text" id="..._TextBox1"/>

所以你可以尝试改变

<asp:TextBox ID="TextBox1" runat="server" BackColor="White"   ForeColor="Black" ></asp:TextBox>

<asp:TextBox ID="TextBox1" runat="server" BackColor="White"   ForeColor="Black" ClientIDMode="Static"></asp:TextBox>

添加ClientIDMode="Static",以便ID将按原样呈现