快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

和记娱乐在线官网:jQuery JSON 无刷新三级联动



asp:DropDownList ID="ddl1" runat="server" Width="100px" >asp:DropDownList>

asp:DropDownList ID="ddl2" runat="server" Width="100px" >asp:DropDownList>

asp:DropDownList ID="ddl3" runat="server" Width="100px" >asp:DropDownList>

js:

script src="js/jquery-1.4.2.min.js" type="text/javascript" >script>

script type="text/javascript">

$(document).ready(function () {

GetA();

$("#ddl1").change(function () { GetB();});

$("#ddl2").change(function () { GetC();});

});

function GetA()

{

$("#ddl1").html("");

$("#ddl1").append("请选择...");

//$("select[name$=ddl1] > option:selected").remove();

var strId = 0;

$.getJSON("LoadClass.ashx?ddlId=" + strId, function (data) {

for (var i = 0; i "select[name$=ddl1]").append($("").val(data[i].ID).html(data[i].Cname));

};

GetB();

});

}

function GetB()

{

$("#ddl2").html(""); $("#ddl3").html("");

var strId = $("#ddl1").attr("value");

if (strId != 0) {

$.getJSON("LoadClass.ashx?ddlId=" + strId, function (data) {

for (var i = 0; i "select[name$=ddl2]").append($("").val(data[i].ID).html(data[i].Cname));

};

GetC();

});

}

}

function GetC()

{

$("#ddl3").html("");

var strId = $("#ddl2").attr("value");

if (strId != 0) {

$.getJSON("LoadClass.ashx?ddlId=" + strId, function (data) {

for (var i = 0; i "select[name$=ddl3]").append($("").val(data[i].ID).html(data[i].Cname));

};

});

}

}

script>

LoadClass.ashx:

@ WebHandler Language="C#" Class="LoadClass" %>

using System;

using System.Web;

using System.Text;

using 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 where parent_Ptr=" + strId + "order by classOrder asc ";

db d = new db();

DataTable dt = d.getDT(strSQL);

StringBuilder strClass = new StringBuilder();

i和记娱乐在线官网f (dt != null)

{

strClass.Append("[");

for (int i = 0; 和记娱乐在线官网i "{");

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 = "application/json";

context.Response.ContentEncoding = Encoding.UTF8;

context.Response.Write(strClass.ToString());

context.Response.End();

}

public bool IsReusable {

get {

return false;

}

}

}

留意:

//后台只能获取value值,不能直接获取text,必要经由过程js、控件中转

//结果:275 276 277

La和记娱乐在线官网bel1.Text = Request.Form[ddl1.UniqueID] + " "

+ Request.Form["ddl2"] + " "

+ Request.Form[ddl3.ClientID.WordStr("_和记娱乐在线官网", "___FCKpd___7quot;)] ;

碰到的问题:

下拉框text的值经由过程HiddenField控件中转

asp:HiddenField ID="HiddenField1" runat="server" />

asp:HiddenField ID="HiddenField2" runat="server" />

asp:HiddenField ID="HiddenField3" runat="server" />

把选中下拉框的值付与暗藏控件中:

script type="text/javascript">

var Key1 = $("#ddl1>option:selected").val();

$('#HiddenField1').val(Key1);

var Key2 = $("#ddl2>option:selected").val();

$('#HiddenField2').val(Key2);

var Key3 = $("#ddl3>option:selected").val();

$('#HiddenField3').val(Key3);

script>

选择下拉框后 动态赋值到HiddenField 控件中的值 无法与下拉框选中的值相对应!

可能与初始化有关,赋值这段代码应该放到什么地方呢?或者有什么好的措施,迎接评论争论?

转自:http://www.cnblogs.com/zengxiangzhan/archive/2010/02/21/1670646.html

您可能还会对下面的文章感兴趣: