【问题标题】:Ajax autocomplete extender not working in asp.net c#Ajax自动完成扩展器在asp.net c#中不起作用
【发布时间】:2014-03-27 11:48:03
【问题描述】:

我阅读了很多关于这个问题的帖子,但找不到我的错误。有人可以帮忙吗

Ajax 自动完成扩展器不工作

aspx.cs 文件

[System.Web.Services.WebMethod] [System.Web.Script.Services.ScriptMethod]

public static List<string> getMemberInfo1(string prefixText)
{
    List<string> firstName = new List<string>();

    DataTable table = new DataTable();
    table = admObj.getMemberInfo(prefixText);

    for (int i = 0; i < table.Rows.Count; i++)
    {
        firstName.Add(table.Rows[i][2].ToString() + " - " + table.Rows[i][0].ToString() + " " + table.Rows[i][1].ToString());
    }



    return firstName;
}

aspx 文件

<asp:TextBox ID="ReferralIdTextBox" runat="server" Width="200px"
AutoCompleteType="DisplayName" AutoPostBack="True" ></asp:TextBox>

<asp:AutoCompleteExtender ID="ReferralIdTextBox_AutoCompleteExtender" 
    runat="server"  Enabled="True" 
    TargetControlID="ReferralIdTextBox" 
    ServiceMethod="getMemberInfo1">
</asp:AutoCompleteExtender>

如果我将相同的代码复制粘贴到一个新文件中,它在那里可以正常工作。 页面上的其他功能有什么用吗?

【问题讨论】:

  • 你遇到了什么错误?
  • 它是否从 Web 服务返回正确的数据?
  • @ashuthinks .... 当我在文本框中输入内容时,我没有得到列表
  • @ashuthinks 如果我将相同的代码复制粘贴到一个新文件中,它在那里工作正常。页面上的其他功能有什么用吗?

标签: c# asp.net ajax


【解决方案1】:

我认为缺少两三件事。您没有在代码中提到服务路径。另一件事是您需要为此添加脚本管理器。

所以,请通过下面的链接,把缺少的东西。

http://www.codeproject.com/Articles/201099/AutoComplete-With-DataBase-and-AjaxControlToolkit

【讨论】:

  • 你把你的web服务的服务路径放了吗?
  • 服务路径? ...不知道那是做什么的....因为我已经为另一个文件编写了相同的代码而没有提及服务路径并且它在那里工作正常
  • 您是否也尝试过最小前缀长度和其他属性?喜欢这个链接 -allwrong.wordpress.com/2007/03/13/… 。它还在服务器端代码上调用你的页面方法吗?
  • 我也试过最小前缀长度和其他属性
猜你喜欢
  • 2012-10-05
  • 1970-01-01
  • 2014-05-09
  • 2013-11-06
  • 2017-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多