te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>javascript - Parsing JSON using JQuery - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Parsing JSON using JQuery - Stack Overflow

programmeradmin3浏览0评论

I have a JSON as follows

{
  columns      : [RULE_ID,COUNTRY_CODE],
  RULE_ID      : [1,2,3,7,9,101,102,103,104,105,106,4,5,100,30], 
  COUNTRY_CODE : [US,US,CA,US,FR,GB,GB,UM,AF,AF,AL,CA,US,US,US]
}

I need to retrive the column names from the columns entry and then use it to search the rest of the entries using jquery. For example I get each column using

jQuery.each(data.columns, function(i,column))

I need to loop throgh the rest of the entries using the values I get from the previous loop. ie without hardcoding COUNTRY_CODE or RULE_ID. What is the best way to do that using Jquery?

I have a JSON as follows

{
  columns      : [RULE_ID,COUNTRY_CODE],
  RULE_ID      : [1,2,3,7,9,101,102,103,104,105,106,4,5,100,30], 
  COUNTRY_CODE : [US,US,CA,US,FR,GB,GB,UM,AF,AF,AL,CA,US,US,US]
}

I need to retrive the column names from the columns entry and then use it to search the rest of the entries using jquery. For example I get each column using

jQuery.each(data.columns, function(i,column))

I need to loop throgh the rest of the entries using the values I get from the previous loop. ie without hardcoding COUNTRY_CODE or RULE_ID. What is the best way to do that using Jquery?

Share Improve this question edited Dec 9, 2008 at 12:23 Tomalak 338k68 gold badges546 silver badges635 bronze badges asked Dec 9, 2008 at 11:38 saregosarego 3,0276 gold badges30 silver badges41 bronze badges 1
  • nitpicking: this is a JavaScript object, but it's not JSON (the string-based data interchange format) – orip Commented Dec 9, 2008 at 12:25
Add a ment  | 

2 Answers 2

Reset to default 9
jQuery.each(data.columns, function(i,column) {
    jQuery.each(data[column], function(i, row) {
    ....
    });
});

Some ments:

Paolo is right, you can use data[column] to get the list of values:

jQuery.each(data.columns, function(iCol,column) {
    jQuery.each(data[column], function(iRow, row) {
    ....
    });
});

Do you need the columns information ? You could get the list of "columns" by iterating directly over data:

for( var column in data )
{
    jQuery.each(data[column], function(i, row) {
    ....
    });
}

Not really a question but your JSON is not valid JSON, I hope this was only an example and not your real data:

{
  "columns"      : ["RULE_ID","COUNTRY_CODE"],
  "RULE_ID"      : [1,2,3,7,9,101,102,103,104,105,106,4,5,100,30], 
  "COUNTRY_CODE" : ["US","US","CA","US","FR","GB","GB","UM","AF","AF","AL","CA","US","US","US"]
}
发布评论

评论列表(0)

  1. 暂无评论