通过url传参遇到参数为中文无法解码问题

传参(在input输入框中输入内容后点击回车,跳转到搜索内容页)

$('.input').focus(function () {

        $(document).keypress(function (e) {

            if (e.keyCode == 13) {

                var the_name = encodeURI($('.the_input input').val())

                window.open("./search.html?search=" + the_name)

            }

        });

    })

encodeURI() 函数可把字符串作为 URI 进行编码。

接收url上传来的参数,调用getUrlParam()直接填入要获取的参数名

function getUrlParam(name) {

        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");

        var url = decodeURI(window.location.search)

        var r = url.substr(1).match(reg);

        if (r != null) return unescape(r[2]); return null;

    }


    var name = getUrlParam('search')

注意解码需要连同所有url一起解码

decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。