日期:2014-05-17  浏览次数:20377 次

怎么在页面加载时让两个DropDownList联动起来
页面有buildingDropDownList表示所在楼,floorDropDownList表示所在层,要求floorDropDownList根据buildingDropDownList显示,例如楼A有1,2,3层,楼B有1,2,3,4层这样

现在buildingDropDownList绑定一个SqlDataSource,在页面第一次加载的时候能够正确显示。floorDropDownList在PageLoad事件中调用showFloor(),根据buildingDropDownList的取值显示对应的层

可是却显示不出来,showFloor()确定没有写错,因为在加载后再选择buildingDropDownList时,floorDropDownList能够正确的显示所在层。

请问要怎么样才能使得在页面第一次加载时两个DropDownList能够联动啊?
然后,绑定的SqlDataSource是什么加载到buildingDropDownList的,为什么在PageLoad事件中读取不到buildingDropDownList.SelectedValue呢?

谢谢!

------解决方案--------------------
引用:
引用:就像 LS 说的,断点下然后看什么时候 SelectValue 有值了,就什么时候调用下 showFloor

在Page_Load事件的时候,buildingDropDownList的SelectedIndex为-1,但是我要在页面第一次加载完毕时就读取这个值来联动floorDropDownList,Page_Load事件之后到页……


那么你的 showFloor 方法应该有一个参数是 接收的 buildingDropDownList 的 SelectValue 吧?那么你PageLoad 的时候直接调用 showFloor 传个 1 进去不就好了么?不过要放在 if(!IsPostBack) 中防止回传。。。呵呵,偷懒的做法,不过很简单,不是么?