dalmariko
@dalmariko
Ни рыба ни мясо. Програмясо

Как сделать 2 и более Связанных списка с помощью AJAX?

Нужно сделать зависимые списки с помощью технологии AJAX но проблема заключается что нужно испольховать технологию аякс, после формирования страници.

На примере у меня выглядит так.

$('#selectTerritory').change(function(){
            var selectTerritory= $(this).val();
            $.ajax({
               type : "POST",
                url: "registration.php",
                // beforesend:(presend()),
                data: {Territory:selectTerritory},
                success: function (data) {
                    $('#detale').html(data);
                }
            });
           
        });
    
        $('#selectRayons').change(function () {
            var selectRayons = $(this).val();
            $.ajax({
                type: "POST",
                url: "registration.php",
                // beforesend:(presend()),
                data: {Rayons: selectRayons},
                success: function (data) {
                    $('#detale').html(data);
                }
            });
        });


<select id="selectTerritory" title="Выберите область"  name="Territory"  required>
              <option value="">Выберете область</option>
            <?php  $plase->getReg_id(); ?>
          </select>
        <br/>
        
        <div id="detale"></div>


echo "<br>";
        echo "<select id='selectRayons'  name='Rayons'>";
        while($row = $result->fetch_assoc()){
            echo "<option value=".mb_substr($row['ter_name'], 0,7).">".$row['ter_name']."</option>";
        } ;
        echo "</select>";
        echo "<br>";


$_POST['Rayons'] в которм должно лежать переданное значение с помощью аякса пустое!
Подскажите как тут быть. и в ччем ошибка?
  • Вопрос задан
  • 678 просмотров
Пригласить эксперта
Ответы на вопрос 1
leni_m
@leni_m
ЧупаКобрус
У вас районы появляются после выбора территории? Если так, то
$('body').on('change', '#selectRayons', function () {
            var selectRayons = $(this).val();
            $.ajax({
                type: "POST",
                url: "registration.php",
                // beforesend:(presend()),
                data: {Rayons: selectRayons},
                success: function (data) {
                    $('#detale').html(data);
                }
            });
        });

У вас скрипт не срабатывает, так как при полной загрузке на странице еще нет районов, и скрипту не повесить change на несуществующий элемент, а body есть всегда)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы