2014-02-16 2 views
0

yii의 dropDownlist에서 ivar 값을 어떻게 저장할 수 있습니까? 작동하지 않습니다 여기 내 코드 :Yii 드롭 다운 목록 저장 값 inearick

public $blaaa; 

내 DropDownList로 코드 : 나는 아약스와도 시도

echo CHtml::dropDownList(
       'categoryDropDownList', 
       '', 
       CHtml::listData(Category::model()->findAll(), 'id', 'name'), 
       array(
        'empty' => 'Select Category', 
        'onchange'=>function() { 
          $this->blaaa = 'js:this.value'; 
         } 
        )); 

하지만, 또한 나던 작업 :

바르의/ 선언
'ajax' => array(
    'type' => 'POST', 
    'url' => CController::createUrl('category/actionBla'), 
    'data' => array('id' => 'js:this.value') 

여기서

public function bla() 
{ 
    if (isset($_POST['id'])) { 
     $this->blaaa = $_POST['id']; 
} 

도움에 미리 감사드립니다! 나는 형태로 CHTML : 드롭 다운리스트를 echo'ing 내 문제를 해결

public function actionBla() 
+0

오류 메시지는 무엇입니까? 어떤 js 오류? –

+0

아니요, 모든 오류는 불행합니다. $ blaa는 여전히 비어 있습니다. 따라서 js는 데이터를 전송하지 않습니다. – Neru

답변

0

아약스 섹션에서

0

, URL 변경 등의 컨트롤러에서

'url' => CController::createUrl('category/bla'), 

아래 함수 이름은 다음과 같아야합니다

echo CHtml::form(); 
    echo CHtml::dropDownList(
     'categoryDropDownList', 
     '', 
     CHtml::listData(Category::model()->findAll(), 'id', 'name'), 
     array(
      'empty' => 'Select Category' 
     )); 
echo CHtml::endForm(); 

이제 activeForm은 POST를 통해 매개 변수를 전송하는 것에 대해 걱정합니다.

+0

문제가 해결되지 않습니다. $ blaa는 여전히 비어 있습니다. – Neru

+0

당신은 print_r ($ _ POST)을 했습니까? in ActionBla()? –

+0

ajax 호출을 확인하고 브라우저 콘솔에 데이터를 게시하십시오. –

관련 문제