我在使用 codeigniter 中的下拉框时遇到问题。我不确定为什么数据没有填充到我的所有投递箱中,这是我的投递箱之一的示例。
<div class="form-group">
<label class="col-sm-7 control-label">Scheduled Area</label><br>
<?php $Scheduled_Area=$e->Scheduled_Area;
$db=array('Outbound','Inbound','Claims');?>
<div class="col-md-5" >
<select name="Scheduled_Area" class="form-control">
<?php foreach($db as $d ){
if($department==$d){ ?>
<option value="<?php echo $d?>" selected="selected"><?php echo $d?></option>
<?}else{?>
<option value="<?php echo $d?>"><?php echo $d?></option>
<?php } }?>
</select>
</div>
</div>
最佳答案
我对 CodeIgniter 不太熟悉,但您提供的代码看起来与 PHP 过程编程方法非常相似
我不确定为什么你有以下代码。不确定是否需要诚实?
$Scheduled_Area=$e->Scheduled_Area;
我认为你的问题出在你的命名数组上。目前是 $db,我会将其从 $db 更改为 $db,因为 $db 通常已经在 MVC 软件包中定义用于数据库目的,并且可能会导致冲突。尝试重命名它,看看是否有帮助。
此外,您的代码中没有任何地方定义 $department,因此,这可能是导致事情无法正常工作的另一个问题。
我希望你不介意,但我已经为你整理了一些代码,这是连接 php 变量和字符串的好习惯。我还大大减少了您出于可读性目的而使用的 php 标签的数量:)
<div class="form-group">
<label class="col-sm-7 control-label">Scheduled Area</label><br>
<?php
$Scheduled_Area = $e->Scheduled_Area;
$options = array("Outbound","Inbound","Claims");
?>
<div class="col-md-5">
<select name="Scheduled_Area" class="form-control">
<?php
// Define $department here or the 'selected' attribute will not work
foreach($options as $option){
if($department == $option){
echo "<option value='".$option."' selected='selected'>".$option."</option>";
}
else{
echo "<option value='".$option."'>".$option."</option>";
}
}
?>
</select>
</div>
</div>
关于php - 不确定为什么下拉框没有填充数据或选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28678375/