2012-01-15 5 views
0

현재 두 개의 HTML 섹션 인 '표준'과 '추천'이 있습니다. 내 jQuery 코드는 JSON 객체를 두 범주로 나눠서 '추천'인지 여부에 따라 지정된 섹션 내에 표시합니다. 그러나 현재 '추천'값을 가진 모든 객체가 표시됩니다. 값이 'featured'인 마지막 4 개의 JSON 객체 만 섹션에 표시되도록 어떻게 변경합니까?마지막 4 개의 JSON 객체 만 표시

if 문을 추가하는 것만 큼 간단하지만 지금까지의 시도는 잘 진행되지 않았습니다.

{"blog":[ 
{ 
    "title":"This is the title", 
    "content":"And this is the content", 
    "date":"01/12/11", 
    "featured":"Yes" 
}, 
{ 
    "title":"This is another title", 
    "content":"And this is some more content", 
    "date": "01/01/12", 
    "featured":"No" 
}, 
{ 
    // Continuation 
} 
]} 

현재 jQuery를은 다음과 같습니다 :

$.getJSON("/TEST/readdb.php", function(json){ 
    if(json.blogs.length > 0) { 
     $.each(json.blogs, function(){ 
      var info = '<h2>' + this['title'] + '</h2><p>' + this['content'] + '</p><p id="date">' + this['date'] + '</p>'; 
      if(this['featured'] == "Yes") { 
       $('#featured').append(info); 
      } 
      else {$('#standard').append(info); 
      } 
     }); 
    } 
}); 
+1

비슷한 질문보기 http://stackoverflow.com/questions/777455/is-there-a-query-language-for-json – Daveo

+1

가장 좋은 방법은 db에서 마지막 네 개의 추천 항목 만 가져 오는 것입니다. readdb.php에. – Diode

+0

@Diode 당신은 절대적으로 옳다. 나는이 옵션을 결국 훨씬 더 간단하게 만들었습니다. – Ryan

답변

0

가장 좋은 방법은 어떻게하는 것이 readdb.php에서 DB에서 마지막 네 가지 기능을 갖춘 아이템을 취득하는 것입니다.

+0

가장 쉬운 방법은 여기에 있습니다. 다시 한번 감사드립니다. – Ryan

0

죄송합니다 당신은 어떤 매개 변수에 따라 마지막 네를 원하십니까 다음과 같이

JSON은 무엇입니까?

코드의 마지막 4 개가 Featured = Yes와 일치하는 첫 번째 4 개 요소 인 것처럼 보입니다. 예를 들어 날짜는 고려되지 않습니다.

쓰기 $. 그 각각의 방법은 또한 동일 비교자를 사용하지 않고, 문자열 검색을 강제로 시도합니다. indexOf. 함수 이름과 원수가 크롬과 매개 변수를 얻기 위해 먼저 디버깅보십시오, 나는 시험없이 쓰기 :

$.each(json.blogs, function(KEY, VALUE){ 
     var info = '<h2>' + this['title'] + '</h2><p>' + this['content'] + '</p><p  id="date">' + this['date'] + '</p>'; 
feat = VALUE.featured; 
     if(feat.indexOf('Yes')!=0) { 
      $('#featured').append(info); 
     } 
     else {$('#standard').append(info); 
     } 
    }); 
+0

예, 가장 최근에 추가 된 4 개의 JSON 객체를'' "featured"= "yes"'또는 다른 방법으로보고 싶습니다. – Ryan

+0

코드에 'yes'값이없는 모든 항목이 제거 된 것처럼 보입니다. – Ryan

+0

시도해 보셨습니까? 나는 그렇게 생각하지 않는다 : D 먼저 각 json 객체의 기능의 값을 검색한다. indexOf! = 0은 string this.featured에서 Yes라는 단어가 발견되어 div에 추가 할 수 있음을 의미합니다. – giuseppe

관련 문제