Как сделать необязательным для заполнения
Пол — Не указан, Мужской, Женский.
Так если не укажут, то будет значение Пол: "Не указан"
ps: или прочерки поставить — на свое усмотрение
Мужской
Женский
Какой смысл делать Поле с выбором пола если оно необязательно… и наверняка не будет использоваться в фильтре?
Дело не в том, что оно обязательно, а в том, что оно изначально заполнено первым значением списка. Плюс у меня довольно много полей получилось и какие-то хотелось бы сделать необязательными, но со списками это невозможно. Можно ли как-то выводить списки в редактировании профиля, так как в фильтрах? Там как раз все списки заполнять необязательно. Или это сложно и нужно весь движок переписывать?
Первое поле сделайте пустым ' '
т.е. перед Муж и Жен просто пробел используйте.
Покажите код, подправлю
Так может тип поля чекбокс или радиокнопка сделать проще было бы?Дело не в том, что оно обязательно, а в том, что оно изначально заполнено первым значением списка.
А радио кнопка есть в инстант?
Так может тип поля чекбокс или радиокнопка сделать проще было бы?Дело не в том, что оно обязательно, а в том, что оно изначально заполнено первым значением списка.
Как вариант можете написать "Не указано", я так и сделал.
Это она?
/** * Генерирует список опций * * @param string $name Имя списка * @param array $items Массив элементов списка (значение => заголовок) * @param string $selected Значение выбранного элемента * @param array $attributes Массив аттрибутов тега * @return html */ $attr_str = html_attr_str($attributes); $html = '<select name="'.$name.'" '.$attr_str.$class.'>'."\n"; $optgroup = false; foreach($items as $value => $title){ if($optgroup !== false){ $html .= "\t".'</optgroup>'."\n"; $optgroup = false; } $optgroup = true; $html .= "\t".'<optgroup label="'.$title[0].'">'."\n"; continue; } $sel = ((string) $selected === (string) $value) ? 'selected' : ''; $html .= "\t".'<option value="'.htmlspecialchars($value).'" '.$sel.'>'.htmlspecialchars($title).'</option>'."\n"; } } if($optgroup !== false){ $html .= "\t".'</optgroup>'."\n"; } $html .= '</select>'."\n"; return $html; }
0 | Пол не указан
1 | Мужской
2 | Женский
Всем, кто советует добавить дополнительное значение в виде не указано, пробел, прочерк и тд, спасибо, но мне этот вариант не подходит.
Готов заплатить тому, кто сможет привести списки в фильтрах и редактировании профиля к единому виду, пишите в личку.