tabpanel中autoload方法传递参数

 前台js tabpanel调用页面并传递参数给其他页面。

 

 

第一步,tabpanel  js代码如下:

 

// Tab面板
    var tabPanelReserveInfo = new Ext.TabPanel({
        renderTo: document.body,
        activeTab: 0,    
        region:"center",
        width:600,
        height:850,
        plain:false,
        defaults:{autoScroll: true},
        items:[{
                title: '仓库部件信息',
                autoLoad:{url:'../../../Ui/Warehouse/ReserveInfo/Components.aspx', scripts:true}
            },{
                title: '耗材工具信息',
                autoLoad:{url:'../../../Ui/Warehouse/ReserveInfo/Stuff.aspx', scripts:true,params:{secondLevelStorageId:'0101',thirdLevelStorageId:'010101'}}
               //调用函数,scripts:true为了载入Stuff.aspx页面的js代码 params为传递的参数 必须保证Stuff.aspx中不再调用Extjs的基类文件ext-base.js,ext-all.js等,否则界面不显示。
          }
        ]
    });

 

 第二步,Stuff.aspx.cs 后台获取参数,并赋值给当前页面中js变量。

        string secondLevelStorageId = Request.Params["secondLevelStorageId"].ToString();
            string thirdLevelStorageId = Request.Params["thirdLevelStorageId"].ToString();

            //赋值给当前页面js中变量,必须在前台js文件中已经声明好的变量
        Response.Write("<script> secondLevelStorageId ='"+secondLevelStorageId+"'</script>");
            Response.Write("<script> thirdLevelStorageId ='" + thirdLevelStorageId + "'</script>");








  

    也可以在js前台直接调用后台的参数:

    <script>
         var secondLevelStorageId =<%= secondLevelStorageId %>
    </script>
   不过这个变量必须在cs文件里面声明为public的

 

你可能感兴趣的:(UI,ext)