<select id="oldtype" runat="server" style="position: relative" class="inbox2">
                                          <option selected>不限</option>
                                          <option value="一室">一室</option>
                                          <option value="二室">二室</option>
                                          <option value="三室">三室</option>
                                          <option value="四室">四室</option>
                                          <option value="五室">五室</option>
                                          <option value="六室">六室</option>
                                          <option value="七室">七室</option>
                                          <option value="八室">八室</option>
                                          <option value="九室">九室</option>
                                          <option value="十室">十室</option>
                                          <option value="更多">更多</option>
                                      </select>
<select id="oldhousetype" runat="server" class="inbox2">
                                  <option>选择类型</option>
                                  <option value="纯住宅">纯住宅</option>
                                  <option value="商住房">商住房</option>
                                  <option value="办公楼">办公楼</option>
                                  <option value="店面商铺">店面商铺</option>
                                  <option value="花园别墅">花园别墅</option>
                                  <option value="服务式公寓">服务式公寓</option>
                                  <option value="其他">其他</option>
                                  </select>        我在CS页面上 oldty = Request["oldtype"].ToString(); oldhty = Request["oldhousetype"].ToString();取得他们的数值然后Response.Redirect("old_house_list.aspx?oldty="+oldty+"&oldhty="+oldhty);然后传到了old_house_list.aspx 上 我在传入到<iframe src="old_list.aspx?oldty=<%=Request.QueryString["oldty"]%>&oldhty=<%=Request.QueryString["oldhty "]%>" 然后继续在old_list.aspx 的CS文件里string oldty = Request.QueryString["oldty"];
        string oldhty = Request.QueryString["oldhty"];继续得到他们的值 但是这个时候 就搞笑了 
oldty=一?oldhty=纯住?
oldhty=null
这是什么情况?
我WENCONFIG里配置了 都是UTF-8  页面上也都是   这样的情况是怎么回事?
求高手告诉一下

解决方案 »

  1.   

    在 url 中传递非acii码,进行编码处理再传递如,Response.Redirect("old_house_list.aspx?oldty="+ HttpServerUtility.UrlEncode(oldty) + "&oldhty=" + HttpServerUtility.UrlEncode(oldhty)); 
      

  2.   

    oldty = Request["oldtype"].ToString(); 
    oldhty = Request["oldhousetype"].ToString();改为:oldty = Server.UrlEncode(Request["oldtype"].ToString());
            
            oldhty = Server.UrlEncode(Request["oldhousetype"].ToString());string oldty = Request.QueryString["oldty"]; 
            string oldhty = Request.QueryString["oldhty"];
    改为:        string oldty = Server.UrlDecode(Request.QueryString["oldty"]);
            string oldhty = Server.UrlDecode(Request.QueryString["oldhty"]);
      

  3.   

    还是不行的  还是会 出错 2个数值都变成了“一?oldhty=纯住?”这个了  怎么回事啊
    大家救命啊
      

  4.   

    LZ,我刚刚模拟了你的全部过程,发现问题应该出现就是跳转的时候没有编码。
    如下:页面:
    <form action="WebForm2.aspx" target="_self" method="get">
    <select name="oldtype" id="oldtype" runat="server">
                                               <option selected>不限 </option>
                                               <option value="一室">一室 </option>
                                               <option value="二室">二室 </option>
                                               <option value="三室">三室 </option>
                                               <option value="四室">四室 </option>
                                               <option value="五室">五室 </option>
                                               <option value="六室">六室 </option>
                                               <option value="七室">七室 </option>
                                               <option value="八室">八室 </option>
                                               <option value="九室">九室 </option>
                                               <option value="十室">十室 </option>
                                               <option value="更多">更多 </option>
      </select>
    <select name="oldhousetype" id="oldhousetype" runat="server">
                                       <option>选择类型 </option>
                                       <option value="纯住宅">纯住宅 </option>
                                       <option value="商住房">商住房 </option>
                                       <option value="办公楼">办公楼 </option>
                                       <option value="店面商铺">店面商铺 </option>
                                       <option value="花园别墅">花园别墅 </option>
                                       <option value="服务式公寓">服务式公寓 </option>
                                       <option value="其他">其他 </option>
      </select>  
    <input type="submit" name="Submit" value="提交" />
    </form>然后在被提交的页面:
            protected void Page_Load(object sender, EventArgs e)
            {
                string s2 = Request["oldtype"];  //这里的取值是对的,并且没有乱码
                string s1 = Request["oldhousetype"]; ////这里的取值同上            //那么可以确定,问题肯定是处在这句了。LZ你改改这里应该就可以了。
                Response.Redirect("old_house_list.aspx?oldty=" + Server.UrlEncode(s2) + "&oldhty=" + Server.UrlEncode(oldhty)); 
            }
      

  5.   

    看是不是空格造成的 <iframe src="old_list.aspx?oldty= <%=Request.QueryString["oldty"]%>&oldhty= <%=Request.QueryString["oldhty "]%>"  
    换成 <iframe src="old_list.aspx?oldty=<%=Request.QueryString["oldty"]%>&oldhty=<%=Request.QueryString["oldhty"]%>"  
      

  6.   

    <iframe src="old_list.aspx?oldty=<%=Request.QueryString["oldty"]%>&oldhty=<%=Request.QueryString["oldhty"]%>"  
      

  7.   

    还是不行  很奇怪啊     别的选项 中文很正常 就这3个出问题 
    而且 在第一个页面取值正常  就是在iframe 转连接的时候 就出问题了 好闷
      

  8.   

    我晕了 彻底无余................
    刚才装了一个IE7.0 完全正常了..........
    IE6和IE7 连传参都不一样?