Радиовходы в нечетком поиске в List.js не попадают в POST

У меня есть форма, которая позволяет людям заполнять «дежурный список», выбирая человека из списка, который отвечает за определенную задачу. я использую Нечеткий поиск в List.js быстро найти нужную запись.

По какой-то причине поля ввода из списка List.js не выбираются при обработке формы.

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

HTML из поиска List.js

<form id = "form" action = "" method = "POST">
// List.js fuzzy-search and some wrapper divs
<ul class = "list">
<li>
<label>
<input type = "radio" name = "officiant" value = "4" id = "dir4">
<span class = "name">Calum MacFarlane</span> (<span class = "church">St. Aidan Anglican Church</span> , <span class = "parish">Moose Jaw</span>, <span class = "diocese">Qu'Appelle</span>)
</label>
</li>
<li>
<label>
<input type = "radio" name = "officiant" value = "2" id = "dir2">
<span class = "name">Dean Pinter</span> (<span class = "church">St. Aidan Anglican Church</span> , <span class = "parish">Moose Jaw</span>, <span class = "diocese">Qu'Appelle</span>)
</label>
</li>
</ul>

// more form elements

<button type = "submit">Submit</button>
</form>

При отправке $ _POST должен иметь элемент «officiant», содержащий значение ввода. Но он опущен из $ _POST.

Эти поля поиска List.js создаются классом PHP и функциями, которые я написал, чтобы я мог добавить функцию поиска на страницу для нескольких элементов. Каждый набор радиостанций имеет уникальное «имя» («день», «проповедник», «church_id» и т. Д.).

Так как сгенерированный HTML не поврежден должным образом, мне интересно, может ли что-то в List.js вызывать проблему.

CSS

Или, может быть, проблема в том, как я настроил CSS для поисковых систем? Я скрыл фактические переключатели и заставил метку подсвечиваться, когда пользователь делает выбор:

.select-wrapper .list li label input[type="radio"] {display: none;}
.select-wrapper .list li label {
display: inline-block;
background: #eee;
font-weight: 400;
font-style: italic;
padding: 6px 16px;
cursor: pointer;
width: 100%;
}
.select-wrapper .list li label input[type="radio"]:checked ~ *, .select-wrapper .list li label.active {color: #000; font-weight: 700;}

Я протестировал CSS, установив входные данные для display: block, чтобы я мог визуально определить, была ли выбрана радиокнопка, и результат был таким же — ни один из этих входов List.js не сделал его в POST.

Я могу опубликовать код PHP из своей функции, если это будет полезно. Я не опубликовал его сразу, так как сгенерированный HTML-код выглядит правильно. Буду признателен за вашу помощь. Я был в этом некоторое время и в растерянности. Передача значений в POST должна быть простой задачей!

0

Решение

Просто добавьте атрибут для ярлыка следующим образом:

<form id = "form" action = "" method = "POST">
<ul class = "list">
<li>
<label for="dir4">
<input type = "radio" name = "officiant" value = "4" id = "dir4">
<span class = "name">Calum MacFarlane</span> (<span class = "church">St. Aidan Anglican Church</span> , <span class = "parish">Moose Jaw</span>, <span class = "diocese">Qu'Appelle</span>)
</label>
</li>
<li>
<label for="dir2">
<input type = "radio" name = "officiant" value = "2" id = "dir2">
<span class = "name">Dean Pinter</span> (<span class = "church">St. Aidan Anglican Church</span> , <span class = "parish">Moose Jaw</span>, <span class = "diocese">Qu'Appelle</span>)
</label>
</li>
</ul>

// more form elements

<button type = "submit">Submit</button>
</form>
0

Другие решения

Проблема оказалась в конфликтующем классе «list» из одной из моих функций PHP. ошибочно упаковывал форму, потому что мои условия не были выражены правильно. Этот конфликт «списков» не позволил List.js функционировать так, как он был спроектирован, так как каждый «список» должен быть в своем собственном контейнере.

Это хорошая идея, чтобы взглянуть на ВСЕ сгенерированный HTML при работе с ООП …

0

По вопросам рекламы [email protected]