GaGa迷失的.NET

MY .NET

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

1 前台 :

<select id="dlist_category1" name="dlist_category1" onchange="DataBind2(this)" class="spgl_test" runat="server"> </select>
<select id="dlist_category2" class="spgl_test" name="dlist_category2" runat="server">    </select>

2

js 函数:

 

<script language="javascript" type="text/javascript">

function DataBind1()
{// 绑定栏目 一级分类
 var ds_category1  = eshop_GaGa.ProcductType1().value;//引用数据集  (dataset 这里是使用ajax 获得后台数据 详见:ajaxpro.2.dll--网上很多)
 //$initSeleByTable("dlist_category1",ds_category1.Tables[0],"PS1F_Name","PS1F_PS1F_ID","-1",1);
 
  document.getElementById("dlist_category").options.length =1;//每次加载时清空一次 重新加载
 if(ds_category1.Tables.length > 0 && ds_category1.Tables[0].Rows.length> 0 )
   {
            for(var i=0;i<ds_category1.Tables[0].Rows.length;i++)
            {                    
              document.getElementById("dlist_category1").options.add(new Option(ds_category1.Tables[0].Rows[i]["PS1F_Name"].toString(),
                                                                                 ds_category1.Tables[0].Rows[i]["PS1F_PS1F_ID"].toString()));    
            }
   }     
}
function DataBind2(obj)
{// 绑定栏目 二级分类
debugger;
     var parent_category=obj.value;//获得选项做为 2级栏目查询条件
     var ds_category2  = eshop_GaGa.ProcductType2(parent_category).value;//引用数据集
     var selec_2 = document.getElementById("dlist_category2");
     selec_2.options.length =1;
    
     //$initSeleByTable("dlist_category2",ds_category2.Tables[0],"PS2F_Name","PS2F_PS2F_ID","-1",1);//调用jsback 里面的通用函数(等于下面)
     if(ds_category2.Tables[0].Rows.length> 0 )
   {
   
   
        for(var i=0;i<ds_category2.Tables[0].Rows.length;i++)
        {          
          
            document.getElementById("dlist_category2").options.add(new Option(ds_category2.Tables[0].Rows[i]["PS2F_Name"].toString(),
                                                                               ds_category2.Tables[0].Rows[i]["PS2F_PS2F_ID"].toString()));   
                 
        }
   }
}

    </script>

3 以上需要注意:A: function DataBind1() 是在body 标签里面初始化加载 onload="DataBind1()" 

                      B: DataBind2(obj) 是在 第一个(也就是上一个select里面onchange 时间里面) 也就是说如果不发生change事件 第二个(下一个)是不会执行的绑定的(这点注意 解决设个默认绑定 例:===请选择====)

                      C: JS取值:

                                 var categor1=document.getElementById("dlist_category1");

                                 var categor1_value=categor1.options[categor1.selectedIndex].value;
                                 var categor1_text=categor1.options[categor1.selectedIndex].text;

                           后台取值:

                                            this.dlist_category1.Items[this.dlist_category1.SelectedIndex].Text;//或者 value ( runat="server")

                      D: 取数据源 略.............

posted on 2010-04-16 13:15  为你疯狂  阅读(1121)  评论(0编辑  收藏  举报