我想在页面加载时改写div的innerHTML请问如何实现
protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write("<script>document.getElementById('divID').innerHTML = '不知道';</script>");
            Response.Write("<script>alert('ok');</script>");
        }
执行后显示提示框ok,但是'divID'中innerHTML中没有显示‘不知道’
分析后觉得是因为Page_Load时,窗体仍未创建divID这个Element,后来把这段写到Page_InitComplete事件中,
执行后结果仍然和在Page_Load中执行一样的。
请问高手:1。问题出在哪儿?
          2。如何实现在页面加载时改写div的innerHTML

解决方案 »

  1.   

    因为Page_OnLoad在控件生成之前发生,所以事件发生时还没有这个div
    你可以在body的onload事件中写
    <body onload="document.getElementById('divID').innerHTML = '不知道';">
      

  2.   

    不好意思,我刚刚接触asp.net不久,请问是否是this.Unload这个事件中?我写在这个事件中后报异常:异常详细信息: System.Web.HttpException: 响应在此上下文中不可用。
      

  3.   

    行 28:             Response.Write("<script>document.getElementById('divMainMenu').innerHTML = '不知道';</script>");
    出错
      

  4.   

    嚯嚯 sorry 我看错了我在试试
      

  5.   

    div 添加 runat="server" 
    Page_Load里直接写  this.divid.InnerHtml = "不知道";