“JS”和“Aspx”之注册“JS脚本”、刷新页面、TreeNode下JS连接设置

一、“JS函数”注册到“ASPX页面”,并在后台使用

       string linkurl = "你的地址";
     ClientScript.RegisterStartupScript(Page.GetType(), "script", "NowShow('"+linkurl+"')",true);
     或者
     Button1.Attributes["onclick"] = "return NowShow("+linkurl+");";
     Button1.Attributes.Add("onclick", "NowShow(" + linkurl + ")"); 

 

二、刷新页面方法

      1、刷新本页面
        前台:<script>window.location.href=window.location.href;</script>
        后台:Response.Write("<script>window.location.href=window.location.href;</script>")  
    2、刷新父页面
        前台:opener.location.href=opener.location.href;</script>
        后台:Response.Write("<script>opener.location.href=opener.location.href;</script>")  
    3、链接到指定网页
        前台:<script>window.location.href='http://www.cnblogs.com/yooolonet/';</script>

        MSDN说的window.navigate(sURL)方法是针对IE的,不适用于FF,在HTML DOM Window Object中,根本没有列出window.navigate方法。
        后台:Response.Write("<script>window.location.href='yourpage.aspx';</script>")  

        或者: Response.Write("NewUrl");   
    4、刷新Iframe
    5、<script>iframe名字或者ID.location.reload(true);</script>
    6、定时刷新
       function flash(){window.location.href="http://www.cnblogs.com/yooolonet/";setTimeout("flash()",1000);} //1000为一秒
       <script>setTimeout("location.href=http://www.cnblogs.com/yooolonet/",2000)</script>  
       <script>setTimeout("self.location.reload();",1000);<script>一秒一次  

三、TreeNode下JS连接指向

1、 “NavigateUrl”属性前台指向 
 

<script type="text/javascript">function NowShow(Url) { document.getElementById("IF").src=Url; } </script><body>

<form id="form1" runat="server"><iframe id="IF" width="500" height="500"></iframe>

<asp:TreeView ID="TreeView1" runat="server"><Nodes><asp:TreeNode NavigateUrl="javascript:NowShow('http://www.baidu.com')" Text="百度" Value="百度">

</asp:TreeNode>

<asp:TreeNode NavigateUrl="javascript:NowShow('http://www.163.com')" Text="163" Value="百度"></asp:TreeNode>

<asp:TreeNode NavigateUrl="javascript:NowShow('http://www.QQ.com')" Text="QQ" Value="百度"></asp:TreeNode>

<asp:TreeNode NavigateUrl="javascript:NowShow('http://www.csdn.net/')" Text="Csdn" Value="百度"></asp:TreeNode></Nodes>

</asp:TreeView></form></body> 

     

      2、“CS”后台绑定

      /// <summary>

        /// 创建所有单位的树图
        /// </summary>
        /// <param name="mTree">树图</param>
        /// <param name="url">要导航到的地址</param>
        public void CreateTreeAll(TreeView mTree,string url)
        {
            DataTable dt = new M_BLL.T_SelectAll().RtSUBCOMP();
            if (dt.Rows.Count != 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    TreeNode tn = new TreeNode();
                    tn.Text = dr["SHORTNAME"].ToString().Trim();
                    tn.Value = dr["SCCODE"].ToString().Trim();
                    tn.Expanded = false;
                    //加载单位节点
                    DataTable dt_depart = new M_BLL.T_SelectAll().RtDEPART();
                    this.CreateNode(tn, dt_depart,url);
                    mTree.Nodes.Add(tn);
                }
            }
        }
        /// <summary>
        /// 通过递归法来创建单位子节点
        /// </summary>
        /// <param name="tn">公司根节点</param>
        /// <param name="dt">单位部门表</param>
        /// <param name="url">要导航到的页面</param>
        public void CreateNode(TreeNode tn, DataTable dt,string url)
        {
            DataView dv = dt.DefaultView;
            dv.RowFilter = "BMBH like '" + tn.Value + "%'";
            if (dv.Count != 0)
            {
                foreach (DataRowView Row in dv)
                {
                    if (this.GetNodeSubString(Row["BMBH"].ToString().Trim()) == tn.Value)
                    {
                        string text = Row["BMMC"].ToString().Trim();
                        string value = Row["BMBH"].ToString().Trim();
                        string isexist = Row["TJBS"].ToString().Trim();//是否为真实部门
                        TreeNode myNode = new TreeNode();
                        myNode.Text = text;
                        myNode.Value = value;
                        myNode.Expanded = false;
                       
                        if (isexist == "1")
                        {
                            string url_all = "../Admin/" + url + "?value=" + value + "";
                            myNode.NavigateUrl = "javascript:NowShow('"+url_all+"')";
                            //myNode.Target = "mainFrame";
                        }
                        else
                        {
                            CreateNode(myNode, dt,url);
                        }
                        tn.ChildNodes.Add(myNode);
                        
                    }
                }
            }
        }
        /// <summary>
        /// 把部门编号去除最后两位,以便与父节点比较
        /// </summary>
        /// <param name="str">子节点对应的部门编号</param>
        /// <returns>Str</returns>
        public string GetNodeSubString(string str)
        {
           str=str.Substring(0, str.Length - 2);
           return str;
        }

 

 最后,加一分呗。    

 

       

        

posted on 2012-04-29 14:55  [CC]  阅读(1418)  评论(0编辑  收藏  举报

导航