0

我有一个 JSON 文件,并希望使用类似 If clicked button ("List all session")--> Shows all the sessions with location,像 SessionID1 New York Washington SessionID2 California 这样的格式来解析我的侧边栏中的数据。

编码

      for(var i = 0; i<data.sessions.length;i++){
       var locations = data.sessions[i].Location;
       if ('a' in locations) { 
       $(".ID1").append("New York");
    }
    if ('b' in locations) { 
    $(".ID1").append("Washington");
    }
    if ('c' in locations) { 
    $(".ID1").append("California");
    }

   sessionlist += "</ul></li>";
   $(".findsession-list").append(sessionlist);
   }
4

1 回答 1

1

谷歌浏览器表明这是错误的:

var sessionlist += ('<li>' +  value.ID + '</li>');

尝试用这个替换它:

var sessionlist += '<li>' +  value.ID + '</li>';

您应该在代码中使用更好的缩进,这将帮助您找到此类问题。

您还需sessionlist要先声明,试试这个代码:

var sessionlist = "";
for(var j = 0; j<data.sessions.length;j++){

    $.each(data.sessions, function(j, value) {
        sessionlist += '<li>' +  value.ID + '</li>';
    })

您可能希望sessionList为每个循环重置:

var sessionlist;
for(var j = 0; j<data.sessions.length;j++){
    sessionlist = "";

    $.each(data.sessions, function(j, value) {
        sessionlist += '<li>' +  value.ID + '</li>';
    })

你可以替换这个:

for(var i = 0; i<data.sessions.length;i++){

经过:

 for(x in data){

并使用x. 整洁一点

http://jsfiddle.net/WsnDP/9/

于 2013-06-23T13:53:13.873 回答