2012-02-27 3 views
0

Добрый день,JQuery Populate выпадающий с данными JSon

Я посмотрел в Интернете и читать сообщения относительно выпадающие с помощью JSON и JQuery. Однако я не могу понять, что мой синтаксис правильный. Когда страница загружается, я хочу, чтобы в выпадающем списке городов были все города. Когда пользователь выбирает сообщество, тогда должны показывать только сообщества этого города.

Любая помощь приветствуется. Пожалуйста, просмотрите мой код здесь http://jsfiddle.net/latoyale/XgxCP/1/

+0

Вы хотите связать с 'change' события, а не' нажмите 'событие. – meagar

ответ

0

Я сделал рабочую вилку: http://jsfiddle.net/ccync/

Для потомков, JavaScript код находится ниже:

// JSON data start 

var data = [ 
    [ 
       {optionValue: 0,url: 'Choose Town',community: 'Choose Town'}, 
       {optionValue: 1,url: '/dutchess/amenia',community: 'Amenia'}, 
       {optionValue: 2,url: '/dutchess/arlington',community: 'Arlington'}, 
       {optionValue: 3,url: '/dutchess/barrytown',community: 'Barrytown'} 
    ], 


      [ {optionValue: 0,url: 'Choose Town',community: 'Choose Town'}, 
       {optionValue: 32,url: '/orange/Campbell-hall',community: 'Campbell Hall'}, 
       {optionValue: 33,url: '/orange/central-valley',community: 'Central Valley'}, 
       {optionValue: 34,url: '/orange/chester',community: 'Chester'}, 
    ] 

      ]; 

// JSON data end 


$(function() { 

    $('#page-changer')[0].reset(); // resets form onload 

    var $county = $('#county'); 
    var $township = $('#township'); 
    function updateTownshipOptions(){ 
     var selected = $county.val(); 
     if (selected) { 
      options = []; 
      var selected_data = data[$county.val()-1]; 
      for (var i=0; i<selected_data.length; i++) { 
       options.push('<option value="'+selected_data[i].optionValue+'">'+selected_data[i].community+'</option>'); 
      } 
      $township.html(options.join('')); 
     } 
    }  
    updateTownshipOptions(); 
    $county.change(updateTownshipOptions); 

}); 
+0

Спасибо, что это определенно более сложный, чем мой оригинальный код. Однако выпадающие города не заполняются всеми городами на погрузке. Мне нужно, чтобы все «сообщества» отображали, если пользователь сначала щелкнет по городам. Когда вы выбрали уезд, список должен показывать города только для этого округа. – latoyale

+0

Проблема с тем, как вы настроили свои данные. Нецелесообразно прокручивать каждый из наборов опций, отфильтровывать опцию «Выбрать город» и сворачивать их все в один список. Как обычно это делается, ваша оригинальная форма включает все возможные варианты. Затем, когда выбран граф, он запускает запрос AJAX для выбора параметров только для выбранного выбора. –

+0

Я могу обновить свои данные для обеспечения этой функциональности. Как только я это сделаю, я хочу знать, что такое синтаксис для извлечения данных сообщества. – latoyale

Смежные вопросы