这是我发送json数据的文件:
<%
//JSONArray arrayObj = new JSONArray();
//JSONArray data = new JSONArray();
int count = 0;
JSONObject result = new JSONObject();
try{
Connection conn = null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(
"jdbc:mysql://localhost/schoolproject","root", "");
Statement stmt = conn.createStatement();
PreparedStatement ps=conn.prepareStatement("select * from staff_attendance where id=?");
ps.setInt(1,Integer.valueOf(request.getParameter("id")));
ResultSet rs = ps.executeQuery();
while(rs.next())
{
count++;
JSONArray ja = new JSONArray();
Map<String,Integer> map=new HashMap<String,Integer>();
//ja.put("<input type='checkbox' name='selected' value="+rs.getInt("id")+">");
result.put("id",rs.getInt("id"));
//map.put("id",rs.getInt("id"));
result.put("staff_id",rs.getInt("staff_id"));
//map.put("staff_id",rs.getInt("staff_id"));
result.put("date_t",rs.getDate("date_t"));
result.put("status",rs.getInt("status"));
//map.put("status",rs.getInt("status"));
result.put("comments",rs.getString("comments"));
result.put("image",rs.getInt("image"));
//ja.put("<button type='button' id='"+rs.getInt("id")+ "'class='btn mine btn-danger btn-sm' onclick='ajaxcall(this.id)'><span class='glyphicon glyphicon-pencil'></span> Edit </button>");
//ja.put(map);
//data.put(ja);
//break;
//out.println(arrayObj);
//out.println(",");
}
}
catch(Exception e){
out.println(e);
}
//result.put("aaData", data);
//out.println(result);
out.println(result.toString());
out.flush();
%>
在这个文件中,我试图访问这样的数据
function ajaxcall(id){
$.ajax({
type:"post",
url:"edit.jsp",
data:{id:id},
success:function(e){
//var obj = JSON.parse(e)
//$("#myid").val(obj[0].id);
//alert(e);
alert(e);
console.log(e[id]);
console.log(e.id);
}
});
//alert(id);
}
我也尝试过设置dataType:json,但是无法实现,我得到了undefined。每当这是我通过服务器响应得到的数据时,形成我的jsp文件。
{"image":7,"date_t":2018-06-14,"comments":"NA","staff_id":1,"id":100,"status":1}
发布于 2018-07-24 16:49:57
输出数据,如下所示
JSONArray jp = new JSONArray();
jp.put(result);
out.println(jp);
out.flush();
然后在javascript中
function ajaxcall(id){
$.ajax({
type:"post",
url:"edit.jsp",
dataType: 'json',
data:{id:id},
success:function(e){
//var obj = JSON.parse(e)
//$("#myid").val(obj[0].id);
//alert(e);
alert(e[0]);
console.log(e[0].id);
}
});
//alert(id);
}
使用dataType:json,它将自动解析数据,我希望它能工作。
https://stackoverflow.com/questions/-100005689
复制相似问题