2012-12-05 19 views
1
<?php echo CHtml::dropDownList('Category', $model -> cate_id, CHtml::listData(Category::model() -> findAll(), 'id', 'name'), array('empty' => 'Select Category','submit'=>array('advert/loadAdvert','id'=>'5'))); ?> 

下拉變化獲取所選的下拉列表值和,而不是硬編碼ID, 我必須把id的那個值。與ID呼籲行動警予

public function actionloadAdvert($id) { 
    $issueDataProvider = new CActiveDataProvider('Advert', array('criteria' => array('condition' => 'cate_id=:cate_id', 'params' => array(':cate_id' => $id),), 'pagination' => array('pageSize' => 1,),)); 
    $this -> render('advertisement', array('model' => Advert::model(), 'issueDataProvider' => $issueDataProvider,)); 
} 

什麼是學習yii的最佳書籍或資源。

+0

你的問題真的不清楚。你有輸出下拉列表的代碼,然後是一個呈現廣告視圖的函數。然後,您詢問獲取選定的下拉列表值 - 您是否試圖將下拉列表中的值傳遞給您的函數?如果是這樣,你的具體問題是什麼?提交表單?閱讀表單數據?試圖用ajax做到這一點?從表單中獲取價值?我們可能需要查看您的提交代碼以及處理提交的控制器方法。 – ernie

回答

1
<?php 
echo CHtml::dropDownList(
    'Category', 
    $model->cate_id, 
    CHtml::listData(Category::model()->findAll(), 'id', 'name'), 
    array(
     'empty' => 'Select Category', 
     'onchange' => 'document.location.href = "/advert/loadAdvert/id/" + this.value', 
    ) 
); 
?> 
+0

我們如何在yii2中實現這一點? @JonathanStevens –