本帖最后由 QQ371496669 于 2011-02-17 11:22:10 编辑

解决方案 »

  1.   

    1.name=encodeURI(中文参数)
    2.request.form["名称"]
      

  2.   

    原则:应尽量避免传中文。下面是我封装的方法
    function request(key)
    {
        var value = "";
        var href = window.location.href;
        if (href.indexOf("?") != -1)
        {
            var pvs = href.substring(href.indexOf("?") + 1);
            pvs = pvs.replace(/&&/g, "[]");
            pvs = pvs.split("&");
            var p = new RegExp(key, "i");
            for (var i = 0; i < pvs.length; i++)
            {
                if (pvs[i].indexOf("=") != -1)
                {
                    if (pvs[i].split("=")[0].replace(p, "").length == 0)
                    {
                        value = pvs[i].substring(pvs[i].indexOf("=") + 1);
                        value = value.replace(/\[\]/g, "&");
                        break;
                    }
                }
            }
        }
        value=value.replace(/#/g,"");
        if (value != "")
        {
            return value;
        }
        else
        {
            return null; 
        }
    }
      

  3.   

    用decodeURI就可以解决乱码的问题
      

  4.   

    1. 意思是说 name=utf-8?吗?
    2. 这样不行吧,request是服务器对象,现在是两个HTML,没有服务器啊还请大虾进一步解答
      

  5.   

    我用了你这个方法,我这里还是显示 %E9%A4%90%E9%A5%AE%E4%B8%9A 这种编码啊
      

  6.   

    by theforever_csdn:
    HTML接收参数,只能通过JS接受GET传递的URL参数。你用POST是不行的,HTML没有处理能力。
      

  7.   

    <script type="text/javascript">var test1="http://www.w3school.com.cn/My first/"document.write(encodeURI(test1)+ "<br />")
    document.write(decodeURI(test1))</script>