通过jquery的ajax实现与servlet的交互
js:
[color=red]注意[/color]:传回的Json格式为[quote][{"value":"第一","key":1},{"value":"第二","key":2},{"value":"第三","key":3}][/quote]
经过eval函数处理后变为[quote][object Object],[object Object],[object Object][/quote]
Servlet:
json.jar
js:
$(document).ready(function(){
$("#test").click(function()
{
$.ajax({
type:"POST",
url:"servlet/GetData",
data:"name="+this.value,
async:true,
success:function(data){
var json=eval(data);
for(i=0;i<json.length;i++){
var value=json[i].value;
var key=json[i].key;
$("#content").append("<input type='checkbox' value='"+value+"'/>"+value);
$("#content").append("<br/>");
}
}
});
});
});
[color=red]注意[/color]:传回的Json格式为[quote][{"value":"第一","key":1},{"value":"第二","key":2},{"value":"第三","key":3}][/quote]
经过eval函数处理后变为[quote][object Object],[object Object],[object Object][/quote]
Servlet:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
array=new JSONArray();
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
PrintWriter out = response.getWriter();
List value = new ArrayList();
value.add("第一");
value.add("第二");
value.add("第三");
for (int i = 0; i < value.size(); i++) {
JSONObject option = new JSONObject();
try {
option.put("key", i+1);
option.put("value", value.get(i));
} catch (JSONException e) {
e.printStackTrace();
}
array.put(option);
}
out.print(array);
System.out.println(array);
out.flush();
out.close();
}
json.jar