日期:2014-05-16 浏览次数:20824 次
<script type="text/javascript">
    var d1 =[{"text":"王家湾","value":"9"},{"text":"李家湾","value":"10"},{"text":"邵家湾","value":"13"}];
    $(d1).each(function(){
        if(
        alert(this.text);
    });
</script>
------解决方案--------------------
javascript就可以完成遍历。
<script type="text/javascript">
  var json = {"options":"[{\"text\":\"王家湾\",\"value\":\"9\"},{\"text\":\"李家湾\",\"value\":\"10\"},{\"text\":\"邵家湾\",\"value\":\"13\"}]"} 
  json = eval(json.options)
  for(var i=0; i<json.length; i++)
  {
     alert(json[i].text+" " + json[i].value)
  }
</script>
------解决方案--------------------
如果你一开始的json是用字符串类型的话要转换为一个json object 。用eval();
例如:var json = eval(strJson);
------解决方案--------------------
//显示新建模板页面供选择的指标
function showIndicator(){
	$.getJSON("IndicatorManager.jsp",                //服务器页面地址
       {
           action: "getIndicatorList"               //action参数
       },
   function(json) {                         		//回调函数
	$(json).each(function(i){ //遍历结果数组
		alert(json[i].indicatorCode);
		alert(json[i].indicatorName);  
	});
	}
	);	
}
服务器段代码:
String getIndicatorList(String userLoginId) {
		JSONArray array = new JSONArray(); //定义JSON数组
		String sql = "select  INDICATORCODE,trim(INDICATORNAME) as INDICATORNAME,STATUS from modelindicator where UserLoginId=? order by INDICATORCODE asc";//定义SQL语句
		Connection conn = null; //声明Connection对象
		PreparedStatement pstmt = null; //声明PreparedStatement对象
		ResultSet rs = null; //声明ResultSet对象
		try {
			conn = DBUtils.getConnection(); //获取数据库连接
			pstmt = conn.prepareStatement(sql); //根据sql创建PreparedStatement
			pstmt.setString(1,userLoginId);
			rs = pstmt.executeQuery(); //执行查询,返回结果集
			while (rs.next()) {
				JSONObject obj = new JSONObject();
				obj.put("indicatorCode", rs.getString(1));
				obj.put("indicatorName", rs.getString(2));
				obj.put("status", rs.getString(3));
				array.add(obj);
			}
		} catch (SQLException e) {
			System.out.println(e.toString());
		} finally {
			DBUtils.close(rs); //关闭结果集
			DBUtils.close(pstmt); //关闭PreparedStatement
			DBUtils.close(conn); //关闭连接
		}
		return array.toString();
	}
------解决方案--------------------
很受益,整好学着用jquery的each处理json格式数据呢。
------解决方案--------------------
json数据和读取的js都有问题,看我的怎么做的:
var json ="{ RecordCount:8,PageCount:2,datalist:[ { AlbumID: '10003',UserID: '1',AlbumName: '789',CoverPhoto: 'http://localhost:3903/Web/UploadFiles/Photo/1/10003/50da4889e6824e13b460e3ad84c27dc9&100.jpg',CheckID: '0',PhotoNum: '3',CreateDate: '2009-9-16 15:00:57',UpdateDate: '2009-10-29 9:47:04',UpdateDateStr:'10月29日'}, { AlbumID: '10000