var dw=[['1','---------请选择----------'],['3','浙江],['4','吉林],['5','山东],
var dw3=[['1','--------请选择---------'],['3','杭州'],['4','湖州']];
var dw4=[['1','--------请选择---------'],['4','延边'],['5','吉林']];
var dw5=[['1','--------请选择---------'],['5','济南'],['6','齐鲁']]function  GetList(dw,ddl)
{
     $(dw).each(function(){
        $("#" + ddl).append("<option value='" + $(this).get(0) + "'>" + $(this).get(1) + "</option>");
    });}$(function(){
        $("#ddl9").find('option').remove().end();//清空
        Getlist(dw,"ddl9");
        
      
     $("#ddl9").change(function(){
        $("#ddl10").find('option').remove().end();//清空
       
       if( $("#ddl9").val() =='3')
            Getlist(dw3,"ddl10");
            
        if( $("#ddl9").val() =='4')
            Getlist(dw4,"ddl10");        if( $("#ddl9").val() =='5')
            Getlist(dw5,"ddl10");
           
        $("#hf9").val($("#ddl9 option:selected").text()); 
        $("#hf10").val("");     
     })
     
     
     $("#ddl10").change(function(){
      $("#hf10").val($("#ddl10 option:selected").text());   })
  
  })用JS给俩个级联ddl赋值,值分别放到隐藏控件hf9和hf10里,录入到数据库,现在要做一个修改功能,要把数据库的值读出来放在ddl9和ddl10俩个控件中,修改还是调用这个JS的,这样更改的话,就提交新的数据,不更改的话,还是原先的数据问题是,读出来放不到这2个控件中,就是显示不了,ddl9.SelectedItem.Text = dr["shengfen"].ToString();ddl10.Text= dr1["shiji"].ToString();这2种形式都赋不了值咋办

解决方案 »

  1.   

    不太明白你的意思  做级联的话 要想做到不刷新 那你得用js 改 既然用了jquery  那就用jquery.ajax获取数据  在第一个dropdownlist上加个onchange事件  来改变第二个的数据源
      

  2.   

    你那不是赋值,
    赋值的方法
    ddl9.Items.Add(new ListItem("x","y"));或者进行绑定
      

  3.   

    你是下拉框本来有值,要从数据库中取出定位到那个值?还是本来没值要把数据库中取出来的加进去?
    定位的话ddl10.SelectedValue=dr1["shiji"].ToString()
      

  4.   


    function Selected(locationid,selected)
    {
    var j;
    var locationid=document.getElementById(locationid);
    j=locationid.length; 
    for (var i=0;i < j; i++)
    {
        if (locationid.options[i].value == selected)
        { 
        locationid.options[i].selected=true;
        return;
        } 
    }}
    Selected("<%=ddl9.ClientID%>","<%=默认值%>");
      

  5.   

    LZ那个不是给DDL赋值,赋值是通过DDL.ADD()方法实现的
      

  6.   

    那啥,4楼理解对了,DLL本身没值的,是用JS可以赋值的,一加载页面,下拉框里就有JS里的值了,现在要从数据库里取到原先录入的值,定位在DDL里,但是好像因为JS的原因,取不到值,4楼的方法试过了,没用哦,