服务器端代码:
package com.winstar.oa.util.tools;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import com.winstar.oa.util.constant.Constants;
/**
*
*/
public class JSONUtil {
/**
* 把对象转换成json字符串写到客户端
* @param response Http应答
* @param obj 需要写到客户端的数据对象
* @param clazz 需要记录的日志class
*/
public static void writeJSONString(HttpServletResponse response, Object obj) {
PrintWriter out = null;
try{
JSONObject jsonObject = JSONObject.fromObject(obj);
response.setCharacterEncoding("utf-8");
out = response.getWriter();
String str = jsonObject.toString();
out.write(str);
} catch(IOException e) {
} finally {
if(out != null) {
out.close();
}
}
}
public static void writeJSONArrayString(HttpServletResponse response, Object obj) {
PrintWriter out = null;
try{
//JSONObject jsonObject = JSONObject.fromObject(obj);
JSONArray jsonArray = JSONArray.fromObject(obj);
response.setCharacterEncoding("utf-8");
out = response.getWriter();
String str = jsonArray.toString();
out.write(str);
} catch(IOException e) {
} finally {
if(out != null) {
out.close();
}
}
}
/**
*
*/
public static Map<String, Object> codeErrorMap(){
Map<String, Object> codeMap = new HashMap<String, Object>();
codeMap.put("data", Constants.EMPTY);
codeMap.put("code", "2");
return codeMap;
}
public static void sendError(HttpServletResponse response) {
try {
response.sendError(500);
} catch (IOException e) {
}
}
}
前端JS中解析:
var results = eval(“(” +result+ “)”);
$.ajax({
type: "POST",
url: "admmodular/inventory/noFilterGetAllInfo.do",
data: "firstSelected="+firstSelected+"&secondSelected="+secondSelected,
success: function(result){
var results = eval("(" +result+ ")");
$("#select3").find("option").remove();
if (results.code == 1) {
/*不写null时,会直接使用上面的html,不会覆盖,即重新定义不会覆盖*/
var html = null;
if (null != results.thirdList && results.thirdList.length>0) {
for (var i = 0; i < results.thirdList.length; i++) {
html+='<option value="'+results.thirdList[i].id+'">'+results.thirdList[i].typeName+'</option>'
}
$("#select3").append(html);
}else{
$("#select3").append("<option value='0'>请选择</option>");
}
}else{
$("#select3").append("<option value='0'>请选择</option>");
}
}
})