Я использую эту рекурсивную функцию для отображения списка с переключателями.
function displayList(&$cats, $parent, $level=0) {
switch ($level) {
case 0: $class = "list-unstyled categorychecklist"; break;
case 1: $class = "children"; break;
case 2: $class = "children2"; break;
}
if ($parent==0) {
foreach ($cats[$parent] as $id=>$nm) {
displayList($cats, $id);
}
}
else {
echo "<ul class='$class'>\n";
foreach ($cats[$parent] as $id=>$nm) {
echo "<li><input type='radio' value='$id' name='category'> $nm</li>\n";
if (isset($cats[$id])) {
displayList($cats, $id, $level+1); //increment level
}
}
echo "</ul>\n";
}
}
Мой вопрос, как я добавляю checked
атрибут для переключателей, использующих эту функцию.
Вы можете просто добавить checked
HTML-атрибут вашего элемента путем замены
echo "<li><input type='radio' value='$id' name='category'> $nm</li>\n";
с
echo "<li><input type='radio' value='$id' name='category' checked> $nm</li>\n";
Обратите внимание, что только один radio
в группе радио должны быть проверены.
Других решений пока нет …