[font="arial, verdana, tahoma, sans-serif"][size="2"]Mil gracias por su explicación, ya me funciona… hasta le agregue una lineas de mas…
[/size][/font]
Dejo el codigo que use por si alguien mas lo necesitase.
Hice esto:
-
Cree la carpeta js en la siguiente ruta=>C:\wamp\prueba\js aqui se encuentra la carpeta proteted
-
Modifique el código que me dio de ejemplo así: cambiando name=computador por name=Dotacion que es el nombre del modelo.
$(document).ready(function(){
$('#Serial').hide();
$('#Modelo').hide();
$('#Modelo_CPU').hide();
$('#Serial_CPU').hide(); // Como por defecto está seleccionada la opción 1, se ocultan los campos que tienen que ver con "Escritorio"
$('#Modelo_Mon').hide();
$('#Serial_Monitor').hide();
$("select[name='Dotacion\\[Tipo\\]']").change(function(){
if ($(this).val()== 'Portatil') { // Muestra el campo de portatil y oculta los campos de escritorio.
$('#Serial').show();
$('#Modelo').show();
$('#Modelo_CPU').hide();
$('#Serial_CPU').hide();
$('#Modelo_Mon').hide();
$('#Serial_Monitor').hide();
}
if ($(this).val()== 'Escritorio') { // Muestra los campos de escritorio y oculta el de portatil
$('#Serial').hide();
$('#Modelo').hide();
$('#Modelo_CPU').show();
$('#Serial_CPU').show();
$('#Modelo_Mon').show();
$('#Serial_Monitor').show();
}
});
});
- En el archivo de la vista agregue la siguiente linea:
Yii::app()->clientScript->registerScriptFile(Yii::app()->request->baseUrl . '/js/cambio.js', CClientScript::POS_END);
- Y en el _form esta así:
<div id="Tipo"class="row">
<?php echo $form->labelEx($model,'Tipo');?>
<?php echo $form->dropDownList($model,'Tipo',$model->getAllTipo());?>
<?php echo $form->error($model,'Tipo');?>
</div>
<div id="Modelo"class="row">
<?php echo $form->labelEx($model,'Modelo');?>
<?php echo $form->dropDownList($model,'Tipo',$model->getAllTipo());?>
<?php echo $form->error($model,'Modelo');?>
</div>
<div id="Serial" class="row">
<?php echo $form->labelEx($model,'Serial');?>
<?php echo $form->textField($model,'Serial',array('size'=>30,'maxlength'=>45));?>
<?php echo $form->error($model,'Serial');?>
</div>
<div id="Modelo_CPU"class="row">
<?php echo $form->labelEx($model,'Modelo_CPU');?>
<?php echo $form->dropDownList($model,'Tipo',$model->getAllTipo());?>
<?php echo $form->error($model,'Modelo_CPU');?>
</div>
<div id="Modelo_Mon"class="row">
<?php echo $form->labelEx($model,'Modelo_Mon');?>
<?php echo $form->dropDownList($model,'Tipo',$model->getAllTipo());?>
<?php echo $form->error($model,'Modelo_Mon');?>
</div>
<div id = "Serial_CPU" class="row">
<?php echo $form->labelEx($model,'Serial_CPU');?>
<?php echo $form->textField($model,'Serial_CPU',array('size'=>30,'maxlength'=>45));?>
<?php echo $form->error($model,'Serial_CPU');?>
</div>
<div id = "Serial_Monitor" class="row">
<?php echo $form->labelEx($model,'Serial_Monitor');?>
<?php echo $form->textField($model,'Serial_Monitor',array('size'=>30,'maxlength'=>45));?>
<?php echo $form->error($model,'Serial_Monitor');?>
</div>
Hasta acá funciona ocultando y mostrando los campos según lo que se escoja en el droplist
Quedo atenta a comentarios.