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

来源:互联网 发布:整形医院网络推广方案 编辑:程序博客网 时间:2024/05/02 00:20

页面:

[html] view plain copy
  1. <form action="searchAction" id=simform class="form-inline" method="post">  
  2.     <div class="input-group"><span>商品搜索:</span></div>  
  3.     <!-- 。。。。。。。。。。。。。。 -->  
  4.     <div class="form-group" style="width:380px">  
  5.         <div class="input-group">  
  6.             <span class="input-group-addon" id="basic-addon3">关键字【商品名称】</span>  
  7.             <input type="text" class="form-control" id="namekey" name="namekey">  
  8.         </div>  
  9.     </div>  
  10.     <input type="submit" class="btn btn-primary" style="margin: auto 10px auto 10px;" value="查询">  
  11. </form>  
  12.   
  13. <!-- 。。。。。。。。。。。 -->  
  14.   
  15. <a id="redirectURL" href="productAction?pagenum=${pageModel.pageNum+1 }&namekey=${namekey}" >下一页</a>   
  16.   
  17. <!-- 。。。。。。。。。。。 -->  
  18.   
  19. <input type="hidden" id="nam" name="nam" value="${namekey }" >  


jquery:

[javascript] view plain copy
  1. function encodeInto(){  
  2.     //解码 部分  
  3.     var nameky=$("#nam").val();  
  4.     //alert(nameky);  
  5.     nameky = decodeURI(nameky);  
  6.     $("#namekey").val(nameky);  
  7.       
  8.       
  9.     //编码部分  
  10.     var href=$("#redirectURL").attr("href");  
  11.     //alert(href);  
  12.     href = encodeURI(encodeURI(href));  
  13.     $("#redirectURL").attr("href",href);  
  14. }  
【注意】编码两次

后台:

[java] view plain copy
  1. System.out.println( " ,name:" + namekey);  
  2. if(namekey!=null && !namekey.isEmpty()){  
  3.     namekey = java.net.URLDecoder.decode(namekey,"UTF-8");  
  4. }  
  5. System.out.println( ",namekey:"+namekey);  


jquery还有一部分是解码的,

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

阅读全文
0 0