Php 使用codeigniter和DB中的数据选择选项
我使用codeigniter与客户创建一个dropdownlistPhp 使用codeigniter和DB中的数据选择选项,php,codeigniter,foreach,Php,Codeigniter,Foreach,我使用codeigniter与客户创建一个dropdownlist 如果我输入selected,则会自动选择下拉列表中的最后一个客户 是否可以在该foreach中选择客户 我的代码片段: <?php foreach ($customers as $c): ?> <option value="<?php echo $c->customer_id;?>"><?php echo $c->customer_name; ?></option
如果我输入selected,则会自动选择下拉列表中的最后一个客户 是否可以在该foreach中选择客户
我的代码片段:
<?php foreach ($customers as $c): ?>
<option value="<?php echo $c->customer_id;?>"><?php echo $c->customer_name; ?></option>
<?php endforeach; ?>
只需在循环内部的
中添加三元条件,$selectedOption
是要选择的值
<?php $selectedOption = "yourvalue";
foreach ($customers as $c): ?>
<option value="<?php echo $c->customer_id;?>" <?= ($c->customer_id == $selectedOption ? "selected" : "")><?php echo $c->customer_name; ?></option>
<?php endforeach; ?>
是的。但是,您必须知道此时选择了哪个客户,然后在循环内检查所选客户id是否与当前客户id相同:
<?php
$chosenCustomer_id = 5; //of course don't hardcode it
foreach ($customers as $c):
$selected = $c->customer_id == $chosenCustomer_id ? 'selected' : '';
?>
<option value="<?php echo $c->customer_id;?>" <?php echo $selected; ?>> <?php echo ><?php echo $c->customer_name; ?></option>
<?php endforeach; ?>
在选项标签中使用所选属性
所选内容需要根据条件进行设置
$selected=(condition): "selected","";
<option <?php echo $selected; ?>> Option Inner Html </option>
$selected=(条件):“selected”、“”;
将变量与选项标记中的属性进行比较
<?php $chosenCustomer_id = 5;?>
<select name="customer" required>
<?php foreach ($customers as $c){?>
<option <?=($chosenCustomer_id==$c['customer_id']?'selected="selected"':'')?> value="<?=$c['customer_id']?>"><?=$c['customer_name']?></option>
<?php }
?>
</select>
CI中有一个表单帮助器将为您执行此操作。见: