用于在下拉列表中设置所选值的代码格式

时间:2013-10-22 20:47:42

标签: php

我是php开发的新手,我正在努力编写一个代码来检查条件以在下拉列表中设置所选值

 while ($row = $result_departments->fetch_assoc()) {
        $dept_info = array(
            'name'  => $row['dpt_name'],
             'id'    => $row['dpt_id']
        );
        $departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'">'.$dept_info['name'].'</option>';

      }
return $departments;

在填充$部门时,我想添加条件if $dept_info['name']=="XYZ" selected=="selected"怎么做?我无法写出正确的语法。

3 个答案:

答案 0 :(得分:1)

你可以用简单的if:

来做
$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'"';

if ($dept_info['name']=="XYZ")
    $department.= ' selected="selected"';

$department .='>'.$dept_info['name'].'</option>';

第二种方式是三元运算符:

$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'"';   
$department.= ($dept_info['name']=="XYZ"?' selected="selected"':null);
$department .='>'.$dept_info['name'].'</option>';

答案 1 :(得分:0)

试试这个:

 while ($row = $result_departments->fetch_assoc()) {
    $dept_info = array(
        'name'  => $row['dpt_name'],
         'id'    => $row['dpt_id']
    );
    $select_it = ($dept_info['name']=="XYZ") ? 'selected' : '';

    $departments.= '<option $select_it value="'.$dept_info['name'].'" name="'.$dept_info['name'].'">'.$dept_info['name'].'</option>';

  }
return $departments;

答案 2 :(得分:0)

一个简单的if / else应该可以解决问题。

while ($row = $result_departments->fetch_assoc()) {
    $dept_info = array(
        'name'  => $row['dpt_name'],
        'id'    => $row['dpt_id']
    );
    if(dept_info['name'] == "XYZ") {
        $departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'" selected="selected">'.$dept_info['name'].'</option>';
    } else {
        $departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'">'.$dept_info['name'].'</option>';
    }
}
return $departments;