2014-06-23 67 views
0

在yii页面重新载入时保存下拉选中状态为“是”,如果选择了该选项?它默认为“不”。谢谢!yii在页面刷新时保存下拉选中状态

getAttributeLabel('MULTI_PART_FORM')); ?>

 <td class="type-text"><?php echo CHtml::dropDownList('MULTI_PART_PO','',array(0=>'No',1=>'Yes'), array('onChange' => "$('#MULTI_PART_VIEW').show();")); ?></td> 
    </tr> 
    <tr id="MULTI_PART_VIEW" style="display:none"> 
     <th><?php echo CHtml::encode($model->getAttributeLabel('MULTI_PART_VIEW')); ?></th> 
     <td><?php echo CHtml::activeTextField($model,'MULTI_PART_PO',array('size'=>120,'maxlength'=>64,'value'=>$model->MULTI_PART_PO)); ?></td> 
      <?php 
+0

1)你有没有做过与方法后的工作方式? – lin

+0

现在正在开展工作。谢谢! – DR1

+0

我的意思是,使用HTML/PHP工作的表单与PHP中的$ _POST/$ _ GET superglobals - > http://php.net/manual/de/language.variables.superglobals.php相处。所以你知道如何在Yii中处理这个问题。 – lin

回答

1
//VIEW CODE 
echo CHtml::beginForm(Yii::app()->createUrl("{controllername}/save",array(/*'{controller parameter}'=>{parameter value},*/)),'post',array('id'=>'form_id')); 

    echo CHtml::dropDownList('MULTI_PART_PO',$saved_dropdown_value,array(0=>'No',1=>'Yes'), array('onChange' => "$('#MULTI_PART_VIEW').show();")); 
    //dropDownList(string $name, string $select="the selected value", array $data, array $htmlOptions=array ()) 

echo CHtml::endForm(); 


//CONTROLLER CODE (add function Save to accessRules array) 
public function actionSave(/*{controller parameter}*/) 
{ 
    $model=new {Modelname}; 

    if(isset($_POST["MULTI_PART_PO"])) 
    { 
     $model->multi_part_po = $_POST["MULTI_PART_PO"]; 
     $model->save(); 
    } 

    $this->render('{Viewname}',array(
     'saved_dropdown_value'=>$model->multi_part_po, 
    )); 
} 
+0

谢谢。我会在一小时内尝试这个工作。如果它有效,我会给你星巴克! – DR1

+0

您也可以在下拉值变化时调用方法Save ajax:$ .post(“<?php echo Yii :: app() - > createUrl('{controllername}/Save');?>”,{ “MULTI_PART_PO”:$(“input [name ='MULTI_PART_PO']”)。val()}); – b3wii

+0

谢谢。理解这个部分有困难:{controller parameter}'=> {参数值}和$ model = new {Modelname};我相信这些将是我的模特和控制者的名字?但是什么是模型参数?谢谢,这是全新的! – DR1

相关问题