Jquery Добавить значения для выбора параметров

Я гуглил этот вариант в течение многих дней, но я не могне могу найти решение.

Что я хочу это:

У меня есть два Select BoxУ первого поля выбора есть названия странВторой блок выбора пуст

То, что я хочу, это когда я выбираю любую страну (например, Соединенное Королевство) в первом окне выбора, должен выполняться php-запрос, чтобы получить все названия городов из таблицы, а затем добавить их во второе поле выбора с помощью Jquery.

Спасибо

 Hugh Bothwell30 сент. 2009 г., 22:15
Несколько соображений: - Ваш серверный код должен кэшировать списки городов - Ваш клиентский Javascript должен кэшировать результаты запросов - Вы должны предварительно загрузить страницу с городами для 2 или 3 наиболее выбранных стран. Между ними эти меры значительно уменьшат количество обратных вызовов сервера и обращений к базе данных.

Ответы на вопрос(3)

Решение Вопроса
предположение

/getCities.php») который принимает параметр ("страна") это идентификатор страны, в которой вы хотите указать города, и вывод JSON, который выглядит следующим образом:

{"Cities":
[
    {
        "ID": 1,
        "Name": "New York"
    },
    {
        "ID": 2,
        "Name": "Los Angeles"
    }
]}

(Ты можешь использоватьJSONLint чтобы подтвердить ваш JSON.)

Тогда, может быть, что-то вроде этого:

<select id="Countries">
    <!-- omitted -->
</select>
<select id="Cities"></select>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
  $(document).ready(function() {
    // when a new country is selected...
    $("#Countries").change(function() {
      // ...clear existing cities...
      $("#Cities").empty();
      // ...and repopulate cities based on JSON data.
      $.getJSON( "/getCities.php",
      // pass the selected country ID
        {
          country: $("#Countries").val()
        },
        function(data) {
          $.each(data.Cities, function(n, city) {
              // add a new option with the JSON-specified value and text
              $("<option />").attr("value", city.ID).text(city.Name).appendTo("#Cities");
          });
        }
      );
    }); // $("#Countries").change(function() { ... });
  }); // $(document).ready(function() { ... });
</script>
 air01 окт. 2009 г., 09:00
Спасибо, Lovely Ans за то, что я искал ... Еще раз спасибо, вы сильно отличаетесь

каскадный выпадающий такой общий интерфейс - мне трудно поверить, что вы не моглине могу найти никаких примеров.Вот'пример PHP это укажет вам правильное направление.

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

<script type="text/javascript">
    function moveItem() {
        $("#target").append($("#source").find(':selected'));
    }
</script>

<select id="source" size="3">
    <option>option1</option>
    <option>option2</option>
    <option>option3</option>    
</select>

<button onclick="moveItem()">Move Item</button>

<select id="target" size="3"></select>

Ваш ответ на вопрос