[英]How can i display multiple dropdown list in for loop with selected value
我在for循環中顯示了多個下拉列表,但是我無法顯示其選定的值,這個想法是我想在下拉列表中顯示選定的帖子值,以下是我的代碼-
<?php
if ( !empty($assignee) )
{
// Counter
$k = 0;
// Loop through
foreach ( $assignee as $assignee )
{
?>
<tr>
<td width="140"><?php echo $assignee->firstname." ".$assignee->lastname ?></td>
<td width="200">
<?php
echo CHTML::activeDropDownList(
$model,
'role[]',
CHtml::listData(Role::model()->findAllByAttributes(array('type'=>'project')), 'id', 'name'),
array('prompt' => 'Select role', 'id'=>'role_'.$k.'', 'onChange'=>'javascript:unableAssignee(this.id)',
)
);
?>
</td>
<td width="60">
<input type="checkbox" name="assignee[]" id="assignee_<?php echo $k ?>" value="<?php echo $assignee->id ?>" disabled="disabled"
<?php if(!empty($_POST['assignee']) && $_POST['assignee'] == $assignee->id ) { echo "in";?> checked="checked" <?php } ?>/>
</td>
</tr>
<?php
// Increment counter
$k++;
}
}
?>
我可以給你一個大概的想法,用它來從數據庫中獲取選定的值
while($row_list1=mysql_fetch_assoc($resultstatus))
{
if($row['status']==$row_list1['license_status'])
{
echo '<option value="'.htmlspecialchars($row_list1['license_status']).'">'.htmlspecialchars($row_list1['license_status']).'</option>';
}
else
{
echo '<option value="'.htmlspecialchars($row_list1['license_status']).'">'.htmlspecialchars($row_list1['license_status']).'</option>';
}
}
您寫了一個小錯字,將CHTML::
更改為CHtml::
根據您的要求,首先從htmlOptions中刪除'prompt' => 'Select role'
,然后在options屬性中使用'selected'=>true
,如下所示。
$valueYouWant2Select='admin'; //for example
echo CHtml::activeDropDownList(
$model,
'role[]',
CHtml::listData(Role::model()->findAllByAttributes(array('type'=>'project')), 'id', 'name'),
array(
'options' => array($valueYouWant2Select=>array('selected'=>true)),
'id'=>'role_'.$k.'',
'onChange'=>'javascript:unableAssignee(this.id)')
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.