本文实例讲述了js+ajax处理java后台返回的json对象循环创建到表格的方法。分享给大家供大家参考,具体如下:
//注:LO是表格的id; 需要自己创建表头, n行,9列的表格; var tab_id; function varify(cardinno) { tab_id=document.getElementById("Layer1"); displayDiv(); tab_id.style.display="none"; var url="getRefInfoServlet?cardInNo="+cardinno; var myAjax=new Ajax.Request(url,{method:'post', parameters:'0', onSuccess:doOnComplete, asynchronous:true}); } var doOnComplete=function(xml_httpRequest){ var msg=eval(xml_httpRequest.responseText); var info=msg.length; var row; var col; if(info>0) { for(var i=0;i<info;i++){ row = L0.insertRow(L0.rows.length); row.insertCell(0).innerHTML =""+msg[i].a; row.insertCell(1).innerHTML =""+msg[i].b; row.insertCell(2).innerHTML =""+msg[i].c; row.insertCell(3).innerHTML =""+msg[i].d; row.insertCell(4).innerHTML =""+msg[i].e; row.insertCell(5).innerHTML =""+msg[i].f; row.insertCell(6).innerHTML =""+msg[i].g; row.insertCell(7).innerHTML =""+msg[i].h; row.insertCell(8).innerHTML =""+msg[i].i; row.setAttribute("align", "center"); } tab_id.style.display="block"; }else{ tab_id.innerHTML="<center>抱歉,该卡未开通,获取不到租还车信息!</center>"; tab_id.style.width = "80%"; tab_id.style.position = "absolute";//绝对位置显示 tab_id.style.display="block"; } removeDiv(); } //遮罩层显示 displayDiv=function() { var mybg = document.createElement("div"); mybg.setAttribute("id","mybg"); mybg.innerHTML="<center>正在处理中, 请稍候<img src='https://www.atool.online/article/lib/images/loading.gif'></img></center>"; mybg.style.width = "100%"; mybg.style.position = "absolute";//绝对位置显示 mybg.style.top = "260"; mybg.style.left = "0"; mybg.style.zIndex = "100";//z轴位置 mybg.style.opacity = "0.8";//透明度 mybg.style.filter = "Alpha(opacity=80)";//滤镜显示透明度 document.body.appendChild(mybg); } //遮罩层移除 removeDiv=function() { document.body.removeChild(mybg); }
java后台存入json对象:
/** * 根据卡内码得到最近的租还车记录 * 返回json对象 * @param cardInNo * @return */ public String getRefInfo(String cardInNo) { StringBuffer bf=new StringBuffer(1024); bf.append("");//sql语句 System.out.println(bf.toString()); /************ 存储json对象***************/ List<JSONObject> jsonList=new ArrayList<JSONObject>(); try { /****************获得判断信息存入数组中*******************/ String [][] str=getArrayByName(bf.toString()); if(str!=null){ for (int i = 0; i < str[0].length; i++) { JSONObject returnValue =new JSONObject(); returnValue.put("a", str[0][i]) .put("b", str[1][i]) .put("c", str[2][i].trim().equals("")?"":str[2][i].substring(0, 19)) .put("d", str[3][i].trim().equals("")?"":str[3][i].substring(0, 19)) .put("e", str[4][i]) .put("f", str[5][i]) .put("g", str[6][i]) .put("h", str[7][i]) .put("i", str[8][i]); jsonList.add(returnValue); } } }catch (Exception e) { e.printStackTrace(); } System.out.println(jsonList.toString()); return jsonList.toString(); }
希望本文所述对大家ajax程序设计有所帮助。