Как изменить раскрывающийся список по умолчанию с php на jquery? - PullRequest
0 голосов
/ 21 июня 2019

У меня есть код для выпадающего списка по умолчанию, структура данных и страница просмотра.У меня нет никаких проблем из моего кода с использованием PHP.но я хочу изменить этот код с php на jquery.

  • Это мой PHP-код выпадающего списка по умолчанию:
<select class="form-control pilihData" id="pilihModel" name="pilihModel">
    <?php
    global $pilih;
    error_reporting(0);
    if (isset($_POST['cari'])) :
        if ($_POST['pilihData'] == 'Abdullah') :
            foreach ($pilih as $plh) : ?>
                <option <?php if ($plh['model'] == 'hummer 3') : echo "selected";
                endif; ?> value="<?= $plh['model']; ?>"><?= $plh['model']; ?></option>
            <?php
            endforeach;
        elseif ($_POST['pilihData'] == 'Hasan') :
            foreach ($pilih as $plh) : ?>
                <option <?php if ($plh['model'] == 'toyota avanza') : echo "selected";
                endif; ?> value="<?= $plh['model']; ?>"><?= $plh['model']; ?></option>
            <?php
            endforeach;
        elseif ($_POST['pilihData'] == 'Ahmad') :
            foreach ($pilih as $plh) : ?>
                <option <?php if ($plh['model'] == 'honda brio') : echo "selected";
                endif; ?> value="<?= $plh['model']; ?>"><?= $plh['model']; ?></option>
            <?php
            endforeach;
        endif;
    endif;
    ?>
</select>
  • это моя страница просмотра,и структура данных: enter image description here

enter image description here

enter image description here

enter image description here

1 Ответ

0 голосов
/ 21 июня 2019

Проблема здесь в том, что скрипт проверяет для каждого человека, какой вариант следует предварительно выбрать.Это приводит к большому количеству повторений нежелательного кода.JQuery не решит эту проблему.

Гораздо лучшим способом было бы отслеживать выбранные параметры в базе данных.Таким образом, между вашими классами user и mobil нет 1, но как минимум 2 отношений.Первое из них, какие опции mobil могут быть выбраны для какого user, а второе, которое user выбрало, какой параметр mobil.

Здесь - это викистатьи об отношениях между классами.

Если вы хотите, чтобы у пользователя была выбрана ровно 1 опция, вы можете сохранить соответствующий ответ id_mobil в праве user, введя новое поле в классе user.

Если в первом раскрывающемся списке выбрано user, вам нужно получить доступные для выбора опции, а также новое поле, в котором эта опция выбрана.и тогда код для создания нового поля выбора будет одинаковым для каждого user.Что-то вроде этого:

<?php
foreach ($pilih as $plh) : ?>
  <option <?php if ($plh['id_model'] == $selectedUser['id_model']) : echo "selected"; endif; ?>value="<?= $plh['model']; ?>"><?= $plh['model']; ?></option>
<?php endforeach; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...