在我的页面代码里有这样的语句
function go()
 {  
   var val1,val2,val3;
   val1=document.getElementById("Text1").value;     //商品信息关键字
   val2=document.getElementById("Text1").value;     //商品信息关键字
   val3=document.getElementById("Xsms").value;      //销售模式
   document.all('orderlist').src = "ProList.aspx?id=" + val1 + "&xsms=" + val2 + "&khlb=" + val3;
 }
这段代码可以执行,但是如果参数值是中文的时候,不能正确的把参数传递过去,如果是英文或数字则没有问题
各位大哥帮我看看,有什么办法可以解决这个问题

解决方案 »

  1.   

    要编码function go()
     {  
       var val1,val2,val3;
       val1=URLencode(document.getElementById("Text1").value);     //商品信息关键字
       val2=URLencode(document.getElementById("Text1").value);     //商品信息关键字
       val3=URLencode(document.getElementById("Xsms").value);      //销售模式
       document.all('orderlist').src = "ProList.aspx?id=" + val1 + "&xsms=" + val2 + "&khlb=" + val3;
     }/*
    *编码
    */
    function URLencode(sStr) 
    {
    return escape(sStr);
    }
      

  2.   

    试试:
    document.all('orderlist').src = "ProList.aspx?id=" + val1 + "&xsms="<%= Server.UrlEncode(Text1.Text) %>" + "&khlb=" + "<%= Server.UrlEncode(Text2.Text) %>";