zoukankan      html  css  js  c++  java
  • 关于ASP.NET 页面生命周期个人感悟

    系统中有一个页面,需要将值赋给一个前台JS的公共变量,在前台写报错:

    <!-- 公用参数 -->
    <script language="javascript" type="text/javascript">
        var jsLangFlag,jsLocationID,jsLocationRoom,jsTranCode;
        jsLangFlag=<%=session("LangFlag") %>;
        jsLocationRoom=0;

     jsLocationID = document.getElementById(MasterPageID + 'Location_drop').value;   //在此报错,因为控件还未加载完毕。
        jsTranCode=0;   //1为订购,入库
           
    </script>

    于是想到把此JS放到PAGE_LOAD去,但同样报错,找不到对象

       Protected  Sub page_load ( )
            Response.Write("<script> jsLocationID = document.getElementById(MasterPageID + 'Location_drop').value; </script>")
        End Sub

    发现原因是一致的,因为当PAGE_LOAD的时候,控件其实还没有加载完毕,那  jsLocationID = document.getElementById(MasterPageID + 'Location_drop') 根本就找不到控件 。

    后来便把此句放到RENDER去,成功了。

       Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
            MyBase.Render(writer)
            Response.Write("<script> jsLocationID = document.getElementById(MasterPageID + 'Location_drop').value; </script>")
        End Sub

  • 相关阅读:
    hdu5587 BestCoder Round #64 (div.2)
    hdu5569 BestCoder Round #63 (div.2)
    hihocoder1257(构造)(2015北京ACM/ICPC)
    hihocoder 1249(2015ACM/ICPC北京)
    hihocoder1258(水)(2015ACM/ICPC北京站)
    hihiocoder 1255(搜索)(2015ACM/ICPC北京站)
    习题9-8 uva1631
    习题9-8 Uva1632
    Orz
    习题9-6 uva 10723
  • 原文地址:https://www.cnblogs.com/withoutaword/p/2668753.html
Copyright © 2011-2022 走看看