欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Jquery通过URL向下一个页面传递参数,并解决参数中文乱码问题

程序员文章站 2022-04-06 17:56:15
一些简单的参数传递,我们可以用URL来实现,但是当参数值中包含中文时,常有乱码。 下面是我解决后的代码。 上一个页面代码,点击某个按钮或p触发跳转事件 $(doc...

一些简单的参数传递,我们可以用URL来实现,但是当参数值中包含中文时,常有乱码。

下面是我解决后的代码。

上一个页面代码,点击某个按钮或p触发跳转事件

    $(document).on('click', '#tiaozhuan2', function(e) {
    		var x=$('#up').val();
		url="youji.html"+"?"+"youji_title="+x;
		window.location.href=encodeURI(url);
		 });

这里我的x是有中文字符的,在传递给下一个页面时,先进行encodeURI编码,

下一个页面,代码。

		function GetRequest() { 
	        var url = decodeURI(location.search); //获取url中"?"符后的字串解决中文编码乱码的问题
	        var theRequest =new Object(); 
	        if (url.indexOf("?")!=-1){ 
	            var str = url.substr(1); 
	            strs = str.split("&"); 
	            for(var i = 0; i < strs.length; i ++){ 
	            theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]); 
	            }                                     //获取url中的参数
	        } 
	        return theRequest; 
    	}
    	var url = decodeURI(location.search);
    	if(url.indexOf("?")!=-1)
	    {	
		    var i=new Object();
		    i=GetRequest();
		    var youji_title=i.youji_title;         //这样可以得到每个参数,这里只有一个,所以只新var了一个,根据实际情况来
		    // alert(youji_title);  
	    }