js解决url中文乱码问题

前端 专栏收录该内容
39 篇文章 1 订阅

在日常开发当中,我们可能遇到要将某个页面的参数通过url链接拼接的方式传递到另一个页面当中,在另一个页面当中进行使用,如果传输过去的是中文,那么可能会遇到中文乱码问题,那么该如何来解决呢?

 

 

 

 

 

<!--test01.html-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script>
</head>
<body>

<div id="userName">你好明天</div>

<div οnclick="send();">点击测试</div>

<script>
    function send(){
        var url = "test02.html";
        var userName = $("#userName").html();
//        window.open(encodeURI(url + "?userName=" + userName));     //encodeURI针对整个参数进行编码
        window.open(url + "?userName=" + encodeURIComponent(userName));  //encodeURIComponent针对单个参数进行编码

    }
</script>

</body>
</html>

 

 

<!--test02-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script>
</head>

<body>

<div id="userName"></div>

<script>
    var urlinfo = window.location.href;//获取url
    var userName = urlinfo.split("?")[1].split("=")[1];//拆分url得到”=”后面的参数
//    $("#userName").html(decodeURI(userName));          //decodeURI针对整个参数进行解码
    $("#userName").html(decodeURIComponent(userName));   //decodeURIComponent针对单个参数进行解码
//    $("#userName").html(userName);
</script>

</body>
</html>

 

针对中文乱码问题,最主要是通过(encodeURI,decodeURI),(encodeURIComponent,decodeURIComponent)两种方法进行参数的编码以及解码工作,其中xxxxURI最主要针对的是整个url参数,xxxxURIComponent针对的是当个url参数; 

简单的分享就到这里,如有疑问,欢迎留言~

 

  • 2
    点赞
  • 0
    评论
  • 7
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值