In my view i have these
<?php echo $form->labelEx($model,'His Name'); ?>
<?php echo $form->textField($model,'Name'); ?>
<?php echo $form->error($model,'Name'); ?>
Then i have a dropdownlist that allow user to select Male/Female. When user select Female i need the labelEx above to change to ‘Her Name’.
How should i do that? (without refreshing the page)
use ajax on select of dropdown…
<?php echo CHtml::dropDownList('country','',array(),array('prompt'=>'Select',
'ajax' => array(
'url'=>CController::createUrl('registration/region'), //create an action and echo his/her
'update'=>'#region_id', //id to refresh, his/her
How do i get ‘#region_id’ from <?php echo $form->labelEx($model,‘His Name’); ?>
Also for my action in controller how do i check the value of selected sex and then echo accordingly?
public function actionChangeSex()
give that id to a div or to that label
the value selected will get as $_POST[ur model name] in the controller.
Hmm… my action doesn’t get call at all
echo $form->dropDownList($model, 'Sex', $SexArray,
'ajax' => array(
I manually call ChangeSex at browser and it display correct value. The dropdownlist doensn’t call the ajax post somehow…
use firebug- console in firefox…u can see the post error… check it… or controller path issue.
Ajax… for this?
Come on … its like trying to kill an insect with an anti-aircraft missile - it would work, but the question is would it be worth it .
In this case - no.
Ajax is necessary only when updating with dynamic content, which is not available to the client. In this case you already know the content:
about 4 lines of JS code
I agree this is how it should be done but i am still trying to figure out how to incorporate this into yii, finding the right place to insert the script and etc.
Thank you all for the advices.