js:
< ;script src="js/jquery-1.4.2.min.js" type="text/javascript" >
LoadClass.ashx:
<%@ WebHandler Language="C#" Class="LoadClass" %>
システムを使用しています。
System.Web を使用;
System.Text を使用;
System.Data を使用します。
public class LoadClass : IHttpHandler {
public void ProcessRequest (HttpContext context) {
// 数组 [{"ID":"275","Cname":"A1"},{"ID": "319","Cname":"A2"},{"ID":"322","Cname":"A3"}]
int strId = Convert.ToInt32(context.Request["ddlId"]) ;
string strSQL = "select * from Class whereparent_Ptr=" strId " order by classOrder asc ";
db d = 新しい db();
DataTable dt = d.getDT(strSQL);
StringBuilder strClass = new StringBuilder();
if (dt != null)
{
strClass.Append("[");
for (int i = 0; i < dt.Rows.Count; i )
{
strClass.Append("{");
strClass.Append(""ID":"" dt.Rows[i]["id"].ToString() "",");
strClass.Append(""Cname":"" dt.Rows[i]["classCname"].ToString() """);
if (i != dt.Rows.Count - 1)
{
strClass.Append("},");
}
}
}
strClass.Append("}");
strClass.Append("]");
context.Response.ContentType = "アプリケーション/json";
context.Response.ContentEncoding = エンコーディング.UTF8;
context.Response.Write(strClass.ToString());
context.Response.End();
}
public bool IsReusable {
get {
return false;
}
}
}
注意:
复制代 代以下のように:
//背景は値 value のみを取得でき、テキストは直接取得できません。js とコントロールを通じて転送する必要があります。
//結果: 275 276 277
Label1.Text = リクエスト。 Form[ddl1.UniqueID ] " " Request.Form["ddl2"] " " Request.Form[ddl3.ClientID.Replace("_", "$")] ;発生した問題: ドロップダウン ボックスのテキストの値HiddenField コントロールを通じて転送されます
:HiddenField ID="HiddenField3" runat ="server" />
選択したドロップダウン ボックスの値を隠しコントロールに割り当てます:
var Key1 = $("#ddl1>オプション:選択済み") .val();
$('#HiddenField1').val(Key1);
var Key2 = $("#ddl2>オプション:選択済み") .val();
$('# HiddenField2').val(Key2);
var Key3 = $("#ddl3>オプション:選択済み").val(); HiddenField3').val(Key3);
ドロップダウン ボックスを選択した後、HiddenField コントロールに動的に割り当てられた値は、ドロップダウンボックス! 初期化に関連している可能性があります。割り当てコードはどこに配置する必要がありますか?それとも何か良い方法はありますか?