本帖最后由 tkx180 于 2009-09-17 19:29:59 编辑

解决方案 »

  1.   

    你好。
    请问你调用Response.Redirect("subject.aspx?subjectID='44'#7")
    之后的地址栏是否正确?
    请尝试把ID:44,的单引号删掉试试。
      

  2.   

    Server.UrlEncode()先编码
    Server.UrlDecode()再解码
      

  3.   

    请问这种方法怎么在button事件里执行。
      

  4.   

    将每个回复的容器比如Table加上Id和Runat=server属性。
    在留言后,执行findControls找到Table容器,然后
    table1.Focus();
      

  5.   

    string strRequest=Server.UrlEncode('44'#7')先编码 传过去的时候
    Response.Redirect("subject.aspx?subjectID="+strRequest) ;
    Server.UrlDecode(request.QueryString["subjectID"])再解码 
    得到传过去的值
      

  6.   

    这样解码有用吗?
    "#7"不是后台需要的参数,是锚点的名称 啊...
    我把代码贴出来吧。//添加回复
        protected void btnRespond_Click(object sender, EventArgs e)
        {
            //增加回复
            Respond rep = new Respond();
            rep.UserName = Request.Cookies["user"]["Name"].ToString();
            rep.AreaID = subjectType;
            rep.SubjectID = subjectID;
            rep.ReplyTitle = Request.Form["subjectTitle"].ToString();
            rep.ReplyContent = Request.Form["subjectContent"].ToString();
            rep.Visible = "1";
            int res=new respondDAO().insert_respond(rep);
            
            //查询刚刚回复的楼层数,我页面的锚点名称和这个楼层数是绑定的,代码省略 
             int floor=8(假设楼层数是8,则锚点名称为"#8")
             
            //subjectID是全局变量,值已经取出。
            string newUrl = "subject.aspx?subjectID=" + subjectID+"#"+floor;
            if (res>0)
            {
                Response.Redirect(newUrl);
            }
        }
    这是我在每个回复前绑定的锚点
    <a name='<%#Eval("Floor") %>'></a>其实不一定非要用锚点。
    也可以跳转到回复的最后一页的最底部,只要让回复人看到自己的刚回复的内容就行。
      

  7.   

    subject.aspx?subjectID=44&#7) 
      

  8.   

    试一下这个
    subject.aspx?subjectID=44&#7