<asp:Label ID="show" runat="server" Text='<%=Session["ids"].ToString() %>'></asp:Label>
运行出来的页面是空白的,如果在cs代码里能去到值,证明值不是空的,在页面上怎么取不到呢

解决方案 »

  1.   

    最好在后台做
    this.show.Text = Session["ids"].ToString();
    如果一定要在前台 Text=' <%#Session["ids"].ToString() %>'
    后台还要
    this.show.DataBind();
      

  2.   

    用js 定义一个变量 吧。 然后用函数返回这个变量。<script type ="text/javascript">
    function rexx()
    {   var xx=  document .getElementById ("ID");
       强制转换xx 然后
    xx。text =  你的参数
    }</script>
    ----------------调用 ok
      

  3.   

    好像是这么回事你那个东西在页面后台代码执行前就已经加载完了你的session可能在它加载完之后赋的值你可以试试在<asp:Label ID="show" runat="server" Text=' <%=Session["ids"].ToString() %>'> </asp:Label> 这句话上打个断点,看一下
      

  4.   

        调试一下看SESSION里面是否有值··
      

  5.   

    runat 的控件,这么来不好使
    在后台用this.txtbox.text=Session这样来赋值吧
      

  6.   

    还有<%=Session["ids"].ToString() %>应该 是<%# Session["ids"].ToString() %>
      

  7.   

    label不需要databind, 就是<%= 换成<%#就可以了
      

  8.   

    改成<%# Session["ids"].ToString() %>
    应该就没问题了吧
      

  9.   

    楼主的调用方式不正确,要先判断 Session["a"]!=null 后才能 ToString() 否则空的时候报错
      

  10.   

    直接调用也不会出错,<%=session["aa"].tostring()%>你要保证session 有值,无值的时候预先跳转。
      

  11.   

    1.保证session 有值
    2.在前台绑定要Text=' <%#Session["ids"].ToString() %>'
    后台还要
    this.show.DataBind(); 
      

  12.   

    为什么要在前台取session?this.show.text = Session["ids"].tostring();这样不是一样的么?
    还有就是你确定你的session里有值可以取了?