Я понимаю, что мы можем предварительно заполнить некоторые данные в HTML-форме, используя URL-адрес. Например, www.example.com/?itemname=sth.

Могу ли я узнать, есть ли у меня аналогичный способ предварительно установить флажок с помощью URL-адреса?

<ul class="list-group">
   <li class="list-group-item">
       <div class="form-check">
          <label class="form-check-label">
            <input type="checkbox" class="form-check-input product_check" id="Tutor_subject_1" name="Maths" value="Maths" 
<?php if (isset($_GET['itemname']) && $_GET['itemname'] === 'sth' ): ?> 
           document.getElementByName("Maths").click();
       <?php endif; ?>>Maths<br>
          </label>
        </div>
    </li>
</ul>

Спасибо @jrswgtr. У меня есть еще один вопрос. Вышеупомянутый параметр фактически является фильтром моей страницы результатов. Ваше решение работоспособно, но оно просто установило флажок, но не передает значение выбранных элементов в мой SQL, как обычно. Могу я узнать, как я могу это изменить?

0
sevenine 14 Сен 2020 в 15:11

2 ответа

Лучший ответ

Да, можете, проверьте параметр $_GET, если:

<input type="checkbox"
       class="form-check-input product_check"
       id="Tutor_subject_1"
       value="Maths"
       <?php if (isset($_GET['itemname']) && $_GET['itemname'] === 'sth' ): ?> 
           checked
       <?php endif; ?> />
1
jrswgtr 14 Сен 2020 в 12:28

Вы можете использовать php для этого решения.

<?php
$item =  (isset($_GET['itemname']) && $_GET['itemname'] === 'sth') ? $_GET['itemname'] : '';
?>

<ul class="list-group">
   <li class="list-group-item">
       <div class="form-check">
          <label class="form-check-label">
            <input type="checkbox" class="form-check-input product_check" id="Tutor_subject_1" value="Maths" <?php if($item) {echo "checked";} ?> >Maths<br>
          </label>
        </div>
    </li>
</ul> 
0
Ishtiaq Ahmed 14 Сен 2020 в 12:32