我想在超链接里面传个ID<tr><td><asp:HyperLink runat="server" Style="position: relative" ID="HyperLink2" NavigateUrl='~/searchPublishNew.aspx?id="+(Int)Session["id"]+"'><%=(String)Session["title"] %></asp:HyperLink></td></tr>这个aspx页面的控件,我想在NavigateUrl里面把id的值加上去,但是运行的时候,id的值却是Session["id"]。
求指点

解决方案 »

  1.   


    NavigateUrl='~/searchPublishNew.aspx?id="+<%=Session["id"]%>+"'
      

  2.   

    '~/searchPublishNew.aspx?id="+(Int)Session['id']+"'
    引号错误,这样试试
      

  3.   

    NavigateUrl="<%= '~/searchPublishNew.aspx?id=' + Session["id"].ToString() %>"
      

  4.   

    NavigateUrl='~/searchPublishNew.aspx?id="+<%=getID()%>+"'后台  写 public getID()  函数直接 return Session["id"].tostring()
    方法很多的
      

  5.   

    NavigateUrl="<%= '~/searchPublishNew.aspx?id=' + Convert.ToInt32(Session["id"]) %>"
      

  6.   

    NavigateUrl='~/searchPublishNew.aspx?id='+(Int)Session["id"]
    试试
      

  7.   

    报错:
    服务器标记不能包含 <% ... %> 
      

  8.   

    报错:
    服务器标记不能包含 <% ... %> 
      

  9.   

    不知道你的HyperLink是不是要重复生成多次,如果是的话,用绑定语法Eval不就可以了嘛,如果只是单个控件的话,那就在后台赋值啊,或者<%=''+session[''] %>看下
      

  10.   

    运行结果:跳转的路径为:
    searchPublishNew.aspx?id="+<%=getId() %>+"
    还是不行啊
      

  11.   

    是,不知道怎么绑定
     <%
                              string path = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E://UMMSDB.mdb";
            OleDbConnection conn = new OleDbConnection(path);
            string sql = "select top 5 art_id,art_title from article";
            conn.Open();
            OleDbCommand cmd = new OleDbCommand(sql,conn);
            OleDbDataReader reader = cmd.ExecuteReader();
            while(reader.Read())
            {
                Session["title"] = reader.GetString(1);
                Session["id"] = reader.GetInt32(0);
                   %>                                                                     
                          <tr><td><asp:HyperLink runat="server" Style="position: relative" ID="HyperLink2" ><%=(String)Session["title"] %></asp:HyperLink></td></tr>
                         
                          <%
            }
            conn.Close();                
                              %>这是部分代码
      

  12.   

     <asp:HyperLink ID="lnkCreate" runat="server" NavigateUrl="javascript:popupWin('create');">创建</asp:HyperLink>
    -------------------------------------
    <script type="text/javascript">
        function popupWin(action,e)
        {
            if(action=='create')
            {
                    var retVal = window.showModalDialog('CreateClassife.aspx?pid='+pid,null,'dialogWidth:650px;dialogHeight:240px;status:no');              
               }
        }
    代码贴上来了,自己看下.
      

  13.   

    NavigateUrl="~/New.aspx?id=' + <%# Eval("id") %>+'>"
      

  14.   

    NavigateUrl='~/New.aspx?id=' + <%= session["id"].ToString() %>+'>'这样就行了。<a href='~/New.aspx?id='+<%=session["id"].ToString()%>...</a>也可以这样。
      

  15.   

    int id=Convert.ToInt32(Session["id"])NavigateUrl='~/searchPublishNew.aspx?id="+<%=id>+"'
      

  16.   

    NavigateUrl='~/searchPublishNew.aspx?id=Session["id"]'
      

  17.   

    因为有了runat
    所以不能包含<%..%>
    你改成<a>就可以了!