自动完成TextBox中的错误

时间:2016-08-12 06:43:44

标签: javascript c# jquery asp.net

我需要一个自动完整的文本框。我尝试了以下代码段:

<input type="text" id="tbx_srchByFn"  class="autosuggest" disabled="disabled" value="fieldname" runat="server"
                                   onclick="this.value=''" />

jquery的

<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/themes/base/jquery-ui.css"
        rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            SearchText();
        });
        function SearchText() {
            $(".autosuggest").autocomplete({
                source: function (request, response) {
                    $.ajax({
                        type: "POST",
                        contentType: "application/json; charset=utf-8",
                        url: "DDL_Home.aspx/GetAutoCompleteData",
                        data: "{'username':'" + document.getElementById('tbx_srchByFn').value + "'}",
                        dataType: "json",
                        success: function (data) {
                            response(data.d);
                        },
                        error: function (result) {
                            alert("Error");
                        }
                    });
                }
            });
        }
    </script>

.cs文件

    using System.Web.Services;
    [WebMethod]

    public static List<string> GetAutoCompleteData(string username)
    {
        List<string> result = new List<string>();
        using (SqlConnection con = new SqlConnection("constr"))
        {
            using (SqlCommand cmd = new SqlCommand("select DISTINCT Name from Register where Name LIKE '%'+@SearchText+'%'", con))
            {
                con.Open();
                cmd.Parameters.AddWithValue("@SearchText", username);
                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    result.Add(dr["Name"].ToString());
                }
                return result;
            }
        }       


    }

当我在文本框中输入时,我没有得到输出。但是当我删除 runat =“server”时,它可以工作。我只需要在服务器中使用,以便我可以从服务器端获取文本框值

0 个答案:

没有答案