【发布时间】:2015-09-09 12:29:36
【问题描述】:
我有这个ashx:
string name = context.Request["term"] ?? "";
string cs = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;
List<MobilineContact> mbContacts = new List<MobilineContact>();
MobilineContact mbc = new MobilineContact();
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand("spGetContactNames", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter()
{
ParameterName = "@name",
Value = name
});
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
mbc.Id = int.Parse(rdr["Id"].ToString());
mbc.Name = rdr["ContactName"].ToString();
mbc.Mobile = rdr["ContactNumber"].ToString();
mbContacts.Add(mbc);
}
}
JavaScriptSerializer js = new JavaScriptSerializer();
context.Response.Write(js.Serialize(mbContacts));
当我在这里提出要求时
它返回我所期望的
[{"Id":1,"Name":"Test","Mobile":"555555555"}]
在调试中一切都OK 在我的 aspx 页面中,我写了这个:
$(document).ready(function () {
$('.toTxt').autocomplete({
source: 'ContactsHandler.ashx'
});
});
这是我的文本框:
<asp:TextBox class="form-control toTxt" ID="To" placeholder="To" runat="server"></asp:TextBox>
为什么我的值没有作为自动完成出现在文本框中?我引用了 jquery、jquery.ui.js 和 jquery.ui.css。控制台没有错误
【问题讨论】:
-
能否包含文本框控件呈现到的 html?
-
您是否尝试将源设置为
/ContactsHandler.ashx? -
我已经通过 post 请求它并且它有效.. 但我不知道为什么
-
确保您的 jquery-UI 选择了自动完成功能,并将 jquery-UI 的图像文件夹添加到您的解决方案中
标签: c# jquery asp.net jquery-ui autocomplete