在一个网页上我使用服务器控件DropDownlist比较多,假如对方是光纤的,倒也快,但是对方是拨号的,就慢死了,我现在DropDownlist 每一个控件都使用 SelectedIndexChanged 事件,因为2号DropDownlist控件是根据1号 DropDownlist 值来筛选内容, 具体1号DropDownlist控件SelectedIndexChanged 事件代码如下
DataView dv2 = new DataView((DataTable)ViewState["dt"]);
dv2.RowFilter = ("parentcode='" + txtga01.SelectedValue.ToString() + "'");
txtga02.DataSource = dv2;
txtga02.DataTextField = "cinvcname";
txtga02.DataValueField = "no";
txtga02.DataBind();
相信我改成javascript代码肯定就快,问题是如何改呢,请大神指点,谢谢.
A Sample is here
http://www.cnblogs.com/downmoon/archive/2010/06/15/1758675.html
Ajax 我狗屁不通,哎,要恶补
jquery就有很多javascript控件, jquery UI等。可以试试
2个dropdownlist的联动,网上找找很多的资料的。
例子很好,问题是例子的数据源来自客户端,如下:
var array=new Array();
array[0]=new Array("华南地区","根目录","华南地区"); //数据格式 ID,父级ID,名称
array[1]=new Array("华北地区","根目录","华北地区");
array[2]=new Array("上海","华南地区","上海");
array[3]=new Array("广东","华南地区","广东");
array[4]=new Array("徐家汇","上海","徐家汇");
array[5]=new Array("普托","上海","普托");
array[6]=new Array("广州","广东","广州");
array[7]=new Array("湛江","广东","湛江");
而我的数据源必须从数据库调出来,一定是datatable, 如何把服务器的数据,挪到客户端呢
@zhengyingcan: 其实你可以通过ajax ,让数据来之于服务器端的。
ajax + ashx
如果是数据量不大的网上找个类似省市的javascript联动下拉
ajax+ashx+json+jquery
1.ajaxcontroltoolkit中有一个是用来处理dropdownlist联动的情况,你去找找看。
2.用ajax调用服务器端页面的代码,即客户端调用服务器端代码,百度一下,很多呃
根据服务端返回的json动态添加option标签试试