私はクレジットカードの申請に取り組んでいます。これが私の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"/>