js解决url中⽂乱码问题
在⽇常开发当中,我们可能遇到要将某个页⾯的参数通过url链接拼接的⽅式传递到另⼀个页⾯当中,在另⼀个页⾯当中进⾏使⽤,如果传输过去的是中⽂,那么可能会遇到中⽂乱码问题,那么该如何来解决呢?
<!--test01.html-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="cdn.bootcss/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">
url编码处理
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="cdn.bootcss/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参数;
简单的分享就到这⾥,如有疑问,欢迎留⾔~