0

私はクレジットカードの申請に取り組んでいます。これが私のWebメソッドです:

[System.Web.Services.WebMethod]
public static List<database> kartListele(int bin)
{

    SqlConnection con = new SqlConnection("Server=.\\SQLEXPRESS;Database=kredikart;Integrated Security=True;");
    database db = new database();

    List<database> dondurulecek = new List<database>();
    SqlCommand cmd = new SqlCommand("listele", con);
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add("@binNo", SqlDbType.Int).Value = bin;
    con.Open();

    using (SqlDataReader dr = cmd.ExecuteReader())
    {
        if (dr.HasRows)
        {
            while (dr.Read())
            {
                db.banka_adi = dr.GetString(0);
                db.type = dr.GetString(1);
                db.sub_type = dr.GetString(2);
                dondurulecek.Add(db);
            }
        }
    }
    con.Close();


    return dondurulecek;
}

しかし、「dondurulecek」オブジェクトをjqueryのオートコンプリート機能に転送する方法がわかりません。多くのサイトで非常に多くの例を試しましたが、うまくいきませんでした。

このリスト オブジェクトを使用するには ajax 関数が必要です。

何か助けはありますか?

編集: このコードを default.aspx に書きました:

 <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" type="text/css" />
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

<script type="text/javascript">
$(function() {
    $(".araTxt").autocomplete({
        source: function(request, response) {
            $.ajax({
                url: "WebService.asmx/kartListele",
                data: "{ 'bin': '" + request.term + "' }",
                dataType: "json",
                type: "POST",
                contentType: "application/json; charset=utf-8",
                success: function(data) {
                    response($.map(data.d, function(item) {
                        return {
                                value: item
                    }
                    }))
        },
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    alert(textStatus);
                }
            });
        },
        minLength: 5
    });
    });

  </script>

   <asp:Textbox  ID="query" runat="server" CssClass="araTxt"/>
4

1 に答える 1

0

私は解決策を見つけました。Web メソッドを「静的」に記述するべきではありませんでした。静電気を除去しただけで、魔法のように機能しました。

于 2013-06-15T05:25:20.937 に答える