【问题标题】:Jquery/Ajax autocomplete textbox not working in ASP.netJquery/Ajax 自动完成文本框在 ASP.net 中不起作用
【发布时间】:2021-12-15 17:34:50
【问题描述】:

我有一个文本框,我正在尝试使用数据库中的值自动完成。但是,当我开始在文本框中输入代码时,代码什么也没做。有谁知道如何解决这个问题?脚本位于页面顶部。

 <asp:TextBox placeholder="Search by job title" runat="server" CssClass="search" ID="searchTitle"></asp:TextBox>
  <script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-1.8.0.js"></script>
    <script src="https://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.22/jquery-ui.js"></script>
    <script>
        $(function () {
            $("#searchTitle").autocomplete({
                source: function (request,response) {
                    var param = { posting_jobPosition: $("#searchTitle").val() };
                    $.ajax({
                        url: "jobseekerHome.aspx/GetTitles",
                        data: JSON.stringify(param),
                        type: "post",
                        contentType: "application/json; charset=utf-8",
                        datafilter: function (data) { return data; },
                        success: function (data) {
                            response($.map(data.d, function (item) { return {value: item }}))
                        },
                    });
                },
                minlength: 1
            });
        });
    </script>
   [WebMethod]
        public static List<string> GetTitles(string posting_jobPosition)
        {
            string CS = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            OleDbConnection Connection = new OleDbConnection(CS);
            List<string> Titles = new List<string>();
            string query = string.Format("SELECT posting_jobPosition FROM BusinessJobPosting WHERE (posting_jobPosition LIKE '%{0}%' AND isActive = true)", posting_jobPosition);

            OleDbCommand oleCom1 = new OleDbCommand(query, Connection);

            Connection.Open();

            OleDbDataReader reader = oleCom1.ExecuteReader();

            while (reader.Read())
            {
                Titles.Add(reader[0].ToString());
            }

            Connection.Close();

            return Titles;
        }

谢谢大家:)

【问题讨论】:

    标签: c# jquery asp.net ajax database


    【解决方案1】:

    我看到的一个可能原因是 ID。把id改成:

    $("#<%=searchTitle.ClientID%>").autocomplete({
    

    相关:Accessing control client name and not ID in ASP.NET

    【讨论】:

      猜你喜欢
      • 2015-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-26
      相关资源
      最近更新 更多