2016-10-13 11 views
5

Mam tablicy JSON w formacie jak tenjak dynamicznie wyświetlać elementy tablicy json w tagu select?

"StoreName":["10001 Main ST","10002 Part1","10004 MyStore1","10005 M STR",  "10008 Centro","10009 MyStore 02","1001 G","1001 H","10010 Store main ROAD","10011 Central M Store","10012 En Department","10013 M Station","10014 Test Center","10015 SubStore1","10016 AA","10018 M part #","10019 Test A - 26032016","1002 B","1002 I","10020 Test Central B "] 

i mam dostęp do każdego elementu niego i wyświetla je w opcji wybierz tag jako

<select id ="storeNm" name="name"> 
    <option>--Select--</option> 
    <option>---Here store name list contents---</option> 
    <option>---Here store name list contents---</option> 
</select> 

Jestem nowym JSON i trzeba to zrobić za pomocą javascript/jQuery, więc każda pomoc/wskazówki zostaną docenione.

+0

użycie .each do pętli poprzez listy i wykorzystania append aby wstawić wybrany do wybierz \ – guradio

+0

jak mogę zrobić, że można pokazać na przykładzie? @guradio –

+0

patrz poniżej odpowiedź zawiera wszystkie twoje wymagania. – guradio

Odpowiedz

8

Powtórz i generuj elementy za pomocą metody Array#map. Gdzie elementy mogą być generate using jQuery.

var data = { 
 
    "StoreName": ["10001 Main ST", "10002 Part1", "10004 MyStore1", "10005 M STR", "10008 Centro", "10009 MyStore 02", "1001 G", "1001 H", "10010 Store main ROAD", "10011 Central M Store", "10012 En Department", "10013 M Station", "10014 Test Center", "10015 SubStore1", "10016 AA", "10018 M part #", "10019 Test A - 26032016", "1002 B", "1002 I", "10020 Test Central B "] 
 
}; 
 

 
// create select tag 
 
$('<select/>', { 
 
    // set id of the element 
 
    id: 'storenm', 
 
    // generate html content by iterating over array 
 
    html: data.StoreName.map(function(v) { 
 
     // generate option with value and text content 
 
     return $('<option>', { 
 
     text: v, 
 
     value: v 
 
     }); 
 
    }) 
 
    // append the generated tag to body 
 
}).appendTo('body');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+1

Dobra odpowiedź. Ale myślę, że poza tekstem warto mieć wartość dla opcji. –

+0

@ThomasJunk: wartość dodana dla opcji :) –

+0

Użyłem fragmentu kodu w tagu skryptu, a nawet podałem link do biblioteki jQuery, ale nie widzę opcji, jak na liście danych @PranavCBalan –

Powiązane problemy