flexigrid 中文乱码处理

在flexigrid 中自带的查询功能很不错,但是功能比较单一,只能单条件进行查询,同样如果输入的是中文在后台解析的进候会显示乱码。

现在介绍一种处理这种乱码的方法,首先修改flexigrid 的源码如下:

var param = [ {
					name : 'page',
					value : p.newp
				}, {
					name : 'rp',
					value : p.rp
				}, {
					name : 'sortname',
					value : p.sortname
				}, {
					name : 'sortorder',
					value : p.sortorder
				}, {
					name : 'query',
					value : encodeURI(encodeURI(p.query))
				}, {
					name : 'qtype',
					value : p.qtype
				} ];

主要是
name : 'query',
					value : encodeURI(encodeURI(p.query))

通过 使用两次encodeURI进行编码处理,然后在后台需要进行如下的解码操作:

public static String decode(String str){
    	try {
    		if(str!=null && !str.trim().equals("") && !str.trim().equalsIgnoreCase("null")){
    			return URLDecoder.decode(URLDecoder.decode(str),"UTF-8");
        	}else{
        		return "";
        	}
		} catch (Exception e) {
			e.printStackTrace();
			return str;
		}
    }

最后显示出来的属性就是正常的了。

更多文章见:http://www.16boke.com

你可能感兴趣的:(flexigrid 中文乱码处理)