function loadInfo() {
$.ajax({
type: "GET",
url:"select.do?method=selectInfo",
cache:false,
dataType:"json",
async:true,
success:function (listInfo){
for(var i;i<listInfo.length;i++) {
$("#mytable").append("<tr>" +
"<td id=\"getid\">" + listInfo(i).Object[0].get("id") + "</td>" +
"<td id=\"getname\">" + listInfo(i).Object[1].get("name") + "</td>" +
"<td id=\"gettel\">" + listInfo(i).Object[2].get("telephone") + "</td>" +
"<td id=\"getaddress\">" + listInfo(i).Object[3].get("address") + "</td>" +
"<td>" + "<input type=\"button\" value = \"修改\" onclick = \"updateInfo(\'editInfo.jsp\',this)\"/></td>" +
"<td>" + "<input type=\"button\" value = \"删除\" onclick = \"del(this)\"/></td>" +
"</tr>" );
}
},
error:function(data) {
alert("修改更新失败!");
}
});
}我json 传回来字符串是{[Object object],[Object object]} 这里面的Object是一个从数据库返回的HashMap对象,我现在要如何获取对象中的属性值。希望给出代码
$.ajax({
type: "GET",
url:"select.do?method=selectInfo",
cache:false,
dataType:"json",
async:true,
success:function (listInfo){
for(var i;i<listInfo.length;i++) {
$("#mytable").append("<tr>" +
"<td id=\"getid\">" + listInfo(i).Object[0].get("id") + "</td>" +
"<td id=\"getname\">" + listInfo(i).Object[1].get("name") + "</td>" +
"<td id=\"gettel\">" + listInfo(i).Object[2].get("telephone") + "</td>" +
"<td id=\"getaddress\">" + listInfo(i).Object[3].get("address") + "</td>" +
"<td>" + "<input type=\"button\" value = \"修改\" onclick = \"updateInfo(\'editInfo.jsp\',this)\"/></td>" +
"<td>" + "<input type=\"button\" value = \"删除\" onclick = \"del(this)\"/></td>" +
"</tr>" );
}
},
error:function(data) {
alert("修改更新失败!");
}
});
}我json 传回来字符串是{[Object object],[Object object]} 这里面的Object是一个从数据库返回的HashMap对象,我现在要如何获取对象中的属性值。希望给出代码
解决方案 »
- Ext js 如何获取gird某一列中的按钮,并设置其属性!!!
- ExtJs:删除成功后刷新页面
- UL 的 scrollTop+=2 后,为何scrollTop 还是=0?
- JS 可否模仿 FIREFOX里的CTRL+滚动鼠标中轴放大,缩小页面?
- facebox的问题
- HTML里的按钮如何变灰啊,快来看看啊
- 请教各位大侠,能否把下面这个脚本用javascript改写,多谢各位,我在线等待!!
- 哥们帮我
- 真是一個奇怪的現象﹐請高手幫忙解答一下
- Cannot set property 'onmouseover' of null
- fusioncharts 饼图pid3d的问题
- javascript求教!!
你可以在
success:function (listInfo){
之后加多一行:
debugger;
for(var i;i<listInfo.length;i++) {然后在firefox(要安装firebug)中,按f12来跟踪查看返回值的情况。
$("#mytable").append("<tr>" +
"<td id=\"getid\">" + listInfo[i].Object[0]["id"]+"</td>" +
"<td id=\"getname\">" + listInfo[i].Object[1]["name"] + "</td>" +
"<td id=\"gettel\">" + listInfo[i].Object[2]["telephone"]+"</td>" +
"<td id=\"getaddress\">" + listInfo[i].Object[3]["address"]+"</td>" +
"<td>" + "<input type=\"button\" value = \"修改\" onclick = \"updateInfo(\'editInfo.jsp\',this)\"/></td>" +
"<td>" + "<input type=\"button\" value = \"删除\" onclick = \"del(this)\"/></td>" +
"</tr>");
alert(typeof listInfo)
看看返回的是什么类型的
如果不是object的话一般要加上
jsonData = $.parseJSON(listInfo);
我网上查下资料 var dataObj=eval("("+listInfo+")");
但是试了下还是不行
DEBUG - {conn-100003} Preparing Statement: select id,name,telephone,address from ADDRESSBOOK
DEBUG - {pstm-100004} Executing Statement: select id,name,telephone,address from ADDRESSBOOK
DEBUG - {pstm-100004} Parameters: []
DEBUG - {pstm-100004} Types: []
DEBUG - {rset-100005} ResultSet
DEBUG - {rset-100005} Header: [id, name, telephone, address]
DEBUG - {rset-100005} Result: [20001, 20001, 20001, 20001]
DEBUG - {rset-100005} Result: [30001, 30001, 30001, 30001]这是数据库返回的结果集,保存在list中
List list= selectInfo();
response.setContentType("text/plain");
OutputStream out = response.getOutputStream();
ObjectMapper mapper = new ObjectMapper();
mapper.writeValue(out,list);
out.close();
返回页面JSON
你的后台中定义的List list= selectInfo();我不知道你后台中那么一搞,再输出的list是js中的json格式么?你打印出来瞅瞅;像数组呀,json呀你不能在前台直接拿jsp服务端的数据格式就那么直接用
success:function (listInfo){
for(var i in listInfo){
if(listInfo.hasOwnProperty(i)){
alert(i+'='+listInfo[i])
}
}
}