Замените выпадающий список переключателем на функциональность - PullRequest
0 голосов
/ 17 января 2019

У меня выпадающий список с параметрами male и female. Я заменяю его переключателями, я написал HTML-код, но чтобы HTML-форма работала, куда я должен поместить атрибут name на переключателе

HTML для выпадающего списка

<select id="gender" name="gender" title="Gender">
   <option value="1" selected="selected">Male</option>
   <option value="2">Female</option>
</select>

HTML для радио

<input type="radio" title="Gender" value="1"> Male
<input type="radio" title="Gender" value="2" checked="checked"> Female

Для выбора атрибут name будет работать при отправке формы, так как он отправит опцию выбора в качестве параметра имени. Но где мне поставить атрибут name для радиокнопок? Если я поставлю атрибут имени для обоих атрибутов одинаково, он не будет работать так как две радиокнопки не могут иметь одинаковые name.

Поскольку я не хочу изменять код бэкэнда, я хочу работать так же, как и раньше, как и для опции select, которая использовалась для отправки выбранной опции через атрибут name,

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

1 Ответ

0 голосов
/ 17 января 2019

Таким образом, вы можете публиковать уникальные значения, подобные этой (в одну и ту же переменную $_POST), HTML:

<input type="radio" title="gender" name="gender" value="1">Male
<input type="radio" title="gender" name="gender" value="2">Female

Доступ к ним в PHP с помощью:

$gender = $_POST['gender'];

Если у вас есть ситуация, когда вы можете выбрать несколько переключателей, вы можете использовать массив, HTML:

<formgroup>
    <input type="radio" title="gender" name="something[0]" value="1">
    <input type="radio" title="gender" name="something[0]" value="2">
</formgroup>
<formgroup>
    <input type="radio" title="gender" name="something[1]" value="1">
    <input type="radio" title="gender" name="something[1]" value="2">
</formgroup>

Затем в PHP вы можете получить доступ к этим значениям, используя:

$radio1 = $_POST['something'][0];
$radio2 = $_POST['something'][1];
...