<a>href中有中文,导致后台获取乱码问题

解决乱码问题,网上已经有很多种方法了。

我来介绍一下,我自己尝试过,且成功的方法。


页面:

<form action="searchAction" id=simform class="form-inline" method="post">
	<div class="input-group"><span>商品搜索:</span></div>
	<!-- 。。。。。。。。。。。。。。 -->
	<div class="form-group" style="width:380px">
		<div class="input-group">
			<span class="input-group-addon" id="basic-addon3">关键字【商品名称】</span>
			<input type="text" class="form-control" id="namekey" name="namekey">
		</div>
	</div>
	<input type="submit" class="btn btn-primary" style="margin: auto 10px auto 10px;" value="查询">
</form>

<!-- 。。。。。。。。。。。 -->

<a id="redirectURL" href="productAction?pagenum=${pageModel.pageNum+1 }&namekey=${namekey}" >下一页</a> 

<!-- 。。。。。。。。。。。 -->

<input type="hidden" id="nam" name="nam" value="${namekey }" >


jquery:

function encodeInto(){
	//解码 部分
	var nameky=$("#nam").val();
	//alert(nameky);
	nameky = decodeURI(nameky);
	$("#namekey").val(nameky);
	
	
	//编码部分
	var href=$("#redirectURL").attr("href");
	//alert(href);
	href = encodeURI(encodeURI(href));
	$("#redirectURL").attr("href",href);
}
【注意】编码两次

后台:

System.out.println( " ,name:" + namekey);
if(namekey!=null && !namekey.isEmpty()){
	namekey = java.net.URLDecoder.decode(namekey,"UTF-8");
}
System.out.println( ",namekey:"+namekey);


jquery还有一部分是解码的,

没有这部分,namekey重新返回到页面还是乱码,所以重新解码回来





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值