Я пытаюсь создать форму обновления для моей системы.
В основном, для обновления / редактирования форма должна отображать текущий выбранный элемент (по идентификатору) из моего $ Row_rekod [отдел ‘];. Но в моем случае это просто показывает название, которое Jabatan, а также остальные предметы в helpline_jabatan Таблица. Ты можешь видеть $ selected_jabatan переменная, которую я использовал для отображения моего текущего выбранного элемента. Но это не работает.
Категория (показать в optgroup в выпадающем меню) = $ Отдел [ ‘kategori_jabatan’]. Все предметы, показанные в списке = $ Отдел [ ‘Jabatan’].
<select name="Jabatan" id="Jabatan">
option value="-1" selected="selected" disabled="disabled">Jabatan</option>
<?php
$query_1 = mysql_query("SELECT * FROM helpline_jabatan ORDER BY no_jabatan ASC");
$depts = array();
while($row_1 = mysql_fetch_assoc($query_1)) {
array_push($depts, $row_1);
$selected_jabatan = $row_1['jabatan'] == $row_rekod['dept'] ? ' selected="selected"': '';
echo $selected_jabatan;
}
$dept_type = '';
foreach ($depts as $dept) {
if ($dept_type != $dept['kategori_jabatan']) {
if ($dept_type != '') {
echo '<option></option>';
echo '</optgroup>';
}
echo '<optgroup label="'.ucfirst($dept['kategori_jabatan']).'"';
}
echo '<option value="'.$dept['jabatan'].'" ' .$selected_jabatan.'>'.htmlspecialchars($dept['jabatan']).'</option>';
$dept_type = $dept['kategori_jabatan'];
}
}
if ($dept_type != '') {
echo '</optgroup>';
?>
</select>
Просмотр динамического выпадающего меню был успешным, но это не та часть, в которой он должен отображать мой текущий выбранный элемент при загрузке страницы. Есть ли способ это исправить?
Это легко сделать с помощью JavaScript, но если вы знаете только PHP, вы можете сделать что-то вроде этого.
1) получить значение выбора из базы данных
$value = $row['selectFieldName'];
2) чем переключить это значение и когда оно совпадет, создайте select с выбранной опцией
switch($value):
{
case 'first':
here you create select element with option selected that matches $value;
break;
}
с помощью JavaScript вы просто выводите значение элемента select в скрытом вводе и динамически помечаете опцию как выбранную, если она соответствует реальному значению.
Других решений пока нет …