質問に固有の答えではありませんが、私はいつもAjax Controlツールキットのオートコンプリートエクステンダーを使用していましたが、私の意見ではJqueryの方がはるかに優れています。それをjQueryの各コントロールに割り当てる必要がありますが、データを取得する関数と結果を処理する関数の2つの関数しか必要としません。
あなたに似た何かをするには、次のとおりです。
$(document).ready(function() {
$('#<%=txtSearchBox.ClientID%>').autocomplete('/Search.ashx');
$('#<%=txtSearchBox.ClientID%>').result(function (event, data, formatted) {
if (data) {
// Extract the data values
var name = data[0]; // appears in textbox
var dataval1= data[1];
var dataval2= data[2];
$("#<%=hdndataval1.ClientID%>").val(dataval1);
$("#<%=hdndataval2 .ClientID%>").val(dataval2);
}
});
});
をあなたがIDを保存するために隠しフィールドを使用する必要がありますが、それはうまくハンドラを使用して自動的に補完します。
public void ProcessRequest(HttpContext context)
{
string prefixText = context.Request.QueryString["q"];
//do your thing here and return as a bar separated list
StringBuilder sb = new StringBuilder();
foreach(Results res in results)
{
sb.Append(String.Format("{0}|{1}|{2}", +res.Val1, res.Val2, res.Val3));
sb.Append(Environment.NewLine);
}
context.Response.Write(sb.ToString());
}
jQueryの
は
私はそのコントロールツールキットによって誓うために使用を認めなければならない(と思う)が、私は私がはるかに優れていると思うのコントロールの負荷を発見したのjQueryに導入されたhereです!
私はあなたの方向に別のオプションを投げたいと思っていました!
出典
2011-10-17 16:00:01
Bex
ありがとう、私はそれを見て、より現実的な解決策のように感じる、ajaxtoolkitの1つは一見あなたの行動の多くをカスタマイズすることはできません。 –
喜んで助けになる!間違いなくあなたがajaxを使用する必要があるときに利用可能な他のJqueryコントロールを見てください。いくつかの素晴らしいものがあります! – Bex