Я использую osTicket, и мы хотели бы изменить значение по умолчанию в выпадающем списке.
Это код, где находится поле со списком:
<tr>
<td width="160">
<?php echo __('Department'); ?>:
</td>
<td>
<select name="deptId">
<option value="" selected >— <?php echo __('Select Department'); ?>—</option>
<?php
if($depts=Dept::getDepartments()) {
foreach($depts as $id =>$name) {
echo sprintf('<option value="%d" %s>%s</option>',
$id, ($info['deptId']==$id)?'selected="selected"':'',$name);
}
}
?>
</select>
<font class="error"><?php echo $errors['deptId']; ?></font>
</td>
</tr>
Мне бы хотелось, чтобы по умолчанию было «Неназначено», что является одним из параметров в выпадающем списке:
Когда я внес изменение, я снова добавил значение, и оно не сохранилось.
Это мое изменение, которое не сработало правильно:
<option value="" selected >Unassigned</option>
Какие-либо предложения?
Я думаю, что вы можете проверить в цикле foreach правильное значение, а затем назначить это значение с выбранным атрибутом.
<?php
if($depts=Dept::getDepartments()) {
foreach($depts as $id =>$name) {
if($id === $info["deptId"]) {
echo '<option value="$id" selected="selected">$name</option>';
} else
{
echo '<option value="$id">$name</option>';
}
}
}
?>
Попробуйте выяснить, каково правильное значение для параметра «Неназначенный».
Вы можете сделать это, просмотрев оригинальный HTML-код. Я подозреваю, что это целое число, как это:
<option value="7">Unassigned</option>
если правильное значение для «Unassigned» относится к примеру «7», вы должны попытаться выяснить, какое значение по умолчанию для $info['deptId']
является. Вы можете сделать это, вставив var_dump($info['deptId'])
где-то в вашем php-коде рядом с опубликованным кодом. Я подозреваю, что это пустая строка или NULL. Предполагая, что это пустая строка, вы должны вставить следующий код перед печатью вашего выбора:
if($info['deptId'] == "") {
$info['deptId'] = 7;
}
Из-за оригинальной логики, опция «Unsassigned» должна быть выбрана, если значение $info['deptId']
имеет правильное значение для «Неназначенный». Важный код, который отвечает за это поведение, таков:
($info['deptId']==$id)?'selected="selected"':''