您的位置:首页 > Web前端 > HTML

HTML get 方法获取中文参数乱码问题

2017-04-21 16:26 477 查看
编码部分: 

var url = "receive.html?value1=" + value1 + "&value2=" + "参数中文参数";
13             url=encodeURI(url);   //对URL的地址进行encodeURI编码,实际上只有中文的部分被修改编码
14             window.location.href=url;

解码接受参数:

function getParam(name) {
10         var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
11         var r = window.location.search.substr(1).match(reg);
12         if (r != null)
13             return decodeURI(r[2]);   //对参数进行decodeURI解码
14         return null;
15     }
完整代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Index</title>
<script type="text/javascript" charset="uf-8" src="jquery-1.11.3.min.js"></script>
<script>
    $(function() {
        $('#send').click(function() {
            var value1 = $('#value1').val();
            var value2 = $('#value2').val();
            var url = "receive.html?value1=" + value1 + "&value2=" + value2;
            url=encodeURI(url);   //对URL的地址进行encodeURI编码,实际上只有中文的部分被修改编码
            window.location.href=url;
        });
    });
</script>
</head>
<body>
    <div>
        <div>
            <span>value1: </span><input type="text" id="value1" />
        </div>
        <div>
            <span>value2: </span><input type="text" id="value2" />
        </div>
        <div>
            <button id="send">发送</button>
        </div>
    </div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Receive Param</title>
<script type="text/javascript" charset="utf-8" src="cordova-2.1.0.js"></script>
<script type="text/javascript" charset="uf-8" src="jquery-1.11.3.min.js"></script>
<script>
    function getParam(name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if (r != null)
            return decodeURI(r[2]);   //对参数进行decodeURI解码
        return null;
    }

    $(function() {
        var val1 = getParam("value1");
        var val2 = getParam("value2");
        $('#value1').html(val1);
        $('#value2').html(val2);
    });
</script>
</head>
<body>
    <div>
        <div>
            <span>value1: </span><b id="value1"></b>
        </div>
        <div>
            <span>value2: </span><b id="value2"></b>
        </div>
    </div>
    <hr />
    <div>
        <a href="index.html">back</a>
    </div>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: