Как я могу динамически получать данные во вкладках и таблетках, используя их идентификаторы? Использование PHP и Codeigniter - PullRequest
0 голосов
/ 03 апреля 2020

Я создаю модуль для вопросов и ответов, и мне нужно получать данные по отдельности каждый.

Я создал вкладку, где я нажимаю Вопрос, на который я хочу ответить, и его дочерние элементы или ответ должны совпадать.

Для наглядности вот моя проблема

У меня есть все эти данные, которые не должны быть получены. Вот почему я создал вкладки и таблетки, чтобы можно было разделять вопросы и ответы

12 и 13 - это идентификационный номер каждой информации

enter image description here

Итак, во вкладках и таблетках я получил это

Проблема в том, что я не могу получить данные динамически, это просто показывает ID 13 данные для вопроса и ответа. Как я могу изменить это динамически, чтобы я мог перемещаться по вкладкам и показывать нужные данные по их идентификатору?

Мне нужно получить идентификатор 12 1-й вкладки

enter image description here

Так вот мой взгляд

<ul class="nav nav-tabs" role="tablist">
        <?php foreach($questions as $question){ ?>
            <?php echo $question->id; ?>

            <li class="nav-item">
                <a class="nav-link" data-toggle="tab" href="#<?php echo $question->id ?>" role="tab"><h4><?php echo $question->question ?></h4></a>
            </li>
        <?php } ?>
    </ul>

    <!-- Tab panes -->
    <div class="tab-content">
        <div class="tab-pane" id="13" role="tabpanel">

        <div class="card" style="border:2px solid black;">
            <div class="card-body">
                    <?php foreach($this->question_model->findAnswersByQuestion($question->id) as $answer){ ?>
                        <?php if($answer->type_id==0): ?>

                                <input type="radio" name="question_<?php echo $question->id; ?>" value="<?php echo $answer->answer ?>" required/>
                                <?php echo $answer->answer; ?><hr>


                        <?php endif; ?>

                        <?php if($answer->type_id==1): ?>
                            <div class="input-group input-group-lg">
                                <input type="text" class="form-control col-md-6" placeholder="Enter Answer" name="question_<?php echo $question->id; ?>" required/>
                            </div>
                        <?php endif; ?>

                    <?php } ?>
            </div>
        </div><br>

        </div>
</div>

1 Ответ

1 голос
/ 03 апреля 2020

Исправьте структуру вкладок, ваши циклы по вопросам для nav-item, но не циклы для tab-pane, поэтому нажатие на ссылку вкладки ничего не делает.

<ul class="nav nav-tabs" role="tablist">
    <?php foreach($questions as $question){ ?>
    <li class="nav-item">
        <a class="nav-link" data-toggle="tab" href="#tab-<?php echo $question->id ?>" role="tab"><h4><?php echo $question->question ?></h4></a>
    </li>
    <?php } ?>
</ul>

<!-- Tab panes -->
<div class="tab-content">
    <?php foreach($questions as $question){ ?>
    <div class="tab-pane" id="tab-<?= $question->id ?>" role="tabpanel">
        <div class="card" style="border:2px solid black;">
            <div class="card-body">
                <?php foreach($this->question_model->findAnswersByQuestion($question->id) as $answer){ ?>

                    <!-- form input $answer / item -->

                <?php } ?>
            </div>
         </div>
     </div>
     <?php } ?>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...