2012-11-12 10 views
5

Oto json. Wyświetlam rok i dokonuję w polu wyboru. Kiedy wybiorę rok i sprawię, że powiązane z nim dane powinny zostać przefiltrowane i wyświetlone w siatce. Na przykład, gdy wybieram 2010 i usuwam powiązane dane, tj. 2010. def, 300 & 5000 powinno być wyświetlone w siatce. Czy ktoś może mi pomóc to bez użycia jakichkolwiek wtyczek jquery.Filtrowanie danych json i wyświetlanie danych w siatce

var data = [ 
    { Year: "2011", Make: "abc", Model: "100", SubModel: "5000", }, 
    { Year: "2011", Make: "abc", Model: "200", SubModel: "6000", }, 
    { Year: "2010", Make: "def", Model: "300", SubModel: "5000", }, 
    { Year: "2011", Make: "def", Model: "100", SubModel: "1000", } 
]; 

Oto mój kod: http://jsfiddle.net/qK2A3/2/

Odpowiedz

1

Ans do moich kwes

function getRelated() { 
     $.each(g_Vehicle, function (index) { 
      var sMake = g_Vehicle[index].Make; 
      if (g_Vehicle[index].Make == $('#DropDown_Make').val() && g_Vehicle[index].Year == $('#DropDown_Year').val()) { 
       $(".ModelClass").html(g_Vehicle[index].Model); 
       $(".SubModelClass").html(g_Vehicle[index].SubModel); 
      } 
     }); 
    }; 

DEMO: http://jsfiddle.net/ybT7a/ To działa.

+0

Bardzo pomocna +1 – Rushi

0

można spróbować w ten sposób.

HTML kod:

<select class="target"> 
    <option value="2010" >2010</option> 
    <option value="2011">2011</option> 
</select> 

kod JavaScript:

$('.target').change(function() { 
    var selected_value = $(this).val(); 
    jQuery.each(data[0] ,function(key,val){ 
    if(val.Year == selected_value){ 
     //code to add to grid go here 
    } 
    }) 
}); 
+0

Napisałem swój kod bez użycia, używając