这是select下拉菜单 change的时候,要从数据库选取其他输入框的数据,所以用到json传值,但是json传中文值乱码,乱码时的js是这样的,如下:
<script type="text/javascript"> $(function(){ $(".sel").change(function(){ var name=$(".sel").find("option:selected").text(); $.getJSON( "getBiaozhun.do",{name:name}, function(data, status) { if(status == "success") { $(".danbaizhiguobiao").val(data.danbaizhiguobiao); $(".suanduguobiao").val(data.suanduguobiao); $(".zhifangguobiao").val(data.zhifangguobiao); $(".feiruzhigutiguobiao").val(data.feiruzhigutiguobiao); $(".junluozongshubiaozhun").val(data.junluozongshubiaozhun); $(".dachangjunqunbiaozhun").val(data.dachangjunqunbiaozhun); }else{ console.log("失败"); } } ); }); }) </script>
但是这样的话传值会乱码,于是在博友的帮助下,终于找到了解决方法,就是在
var name=$(".sel").find("option:selected").text();
之后加一句:
name=encodeURI(name,"utf-8");
然后在后台Controller中加入
String productname=URLDecoder.decode(request.getParameter("name"),"utf-8");
按照提示导入URLDecoder的jar包即可,即可解决中文乱码传值问题