Yii Framework Forum: Evento Onchange En Un Combo ? - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Evento Onchange En Un Combo ? help :D SOS Rate Topic: -----

#1 User is offline   erickMartinez 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 127
  • Joined: 20-December 13

Posted 05 May 2014 - 11:20 AM

Buenos Dias :D


tengo el siguiente combo
<?php echo $form->dropDownList($model,'cate_nomb', GeTcate::toDownList(),array('prompt' => 'Seleccione una categoria...')); ?>


lo que quiero hacer es que cuando seleccione una opción del combo, se me habiliten campos en mi formulario de acuerdo a dicha selección

<div class="control-group" style="display:none">
		<?php echo $form->labelEx($model,'eslp_fech',array('class'=>'control-label')); ?>
	<div class="controls">
		<?php echo $form->textField($model,'eslp_fech'); ?>
		<?php echo $form->error($model,'eslp_fech'); ?>
	</div>
	</div>



Pro favor alguien podría ser tan amable de ayudarme con un ejemplo :D les agradezco :D :D
0

#2 User is offline   Daniel Galvan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 83
  • Joined: 04-March 12
  • Location:Mexico

Posted 05 May 2014 - 01:44 PM

Que tal este ejemplo:

<?php echo $form->dropDownList($model,'cate_nomb', GeTcate::toDownList(),array('id'=>'show-hide-action', 'prompt' => 'Seleccione una categoria...')); ?>

<div id="control-group1" class="control-group" style="display:none">
	<p>Valor1</p>
</div>
<div id="control-group2" class="control-group" style="display:none">
	<p>Valor2</p>
</div>

<script type="text/javascript">
(function($){
	$(document).ready(function() {
	    $("#show-hide-action").change(function() {
	    	// obtienes el valor seleccionado del combo
	    	var action = $(this).val();

	    	if (action) {
	    		// suponiendo que tu combo tiene dos elementos y los cuales tienen value Valor1 y Valor2 (array('Value1'=>'Valor 1', 'Value2'=>'Valor 2'))
	    		if (action === 'Valor1') {
	    			$("#control-group1").show();
	    			$("#control-group2").hide();
	    		} elseif (action === 'Valor2') {
	    			$("#control-group1").hide();
	    			$("#control-group2").show();
	    		}
			}
	        
	    });
	});
}(jQuery));
</script>


Espero te sirva.

:rolleyes:
If my post was useful, Would you might give a vote +? / Si mi mensaje fue útil, ¿Le podrías dar un voto +?

Thanks / Gracias
1

#3 User is offline   erickMartinez 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 127
  • Joined: 20-December 13

Posted 05 May 2014 - 03:23 PM

View PostDaniel Galvan, on 05 May 2014 - 01:44 PM, said:

Que tal este ejemplo:

<?php echo $form->dropDownList($model,'cate_nomb', GeTcate::toDownList(),array('id'=>'show-hide-action', 'prompt' => 'Seleccione una categoria...')); ?>

<div id="control-group1" class="control-group" style="display:none">
	<p>Valor1</p>
</div>
<div id="control-group2" class="control-group" style="display:none">
	<p>Valor2</p>
</div>

<script type="text/javascript">
(function($){
	$(document).ready(function() {
	    $("#show-hide-action").change(function() {
	    	// obtienes el valor seleccionado del combo
	    	var action = $(this).val();

	    	if (action) {
	    		// suponiendo que tu combo tiene dos elementos y los cuales tienen value Valor1 y Valor2 (array('Value1'=>'Valor 1', 'Value2'=>'Valor 2'))
	    		if (action === 'Valor1') {
	    			$("#control-group1").show();
	    			$("#control-group2").hide();
	    		} elseif (action === 'Valor2') {
	    			$("#control-group1").hide();
	    			$("#control-group2").show();
	    		}
			}
	        
	    });
	});
}(jQuery));
</script>


Espero te sirva.

:rolleyes:


Muchas gracias !!

que diferencia hay entre como yo lo resolvi a la manera en la cual tu lo pones, yo lo había resuelto así :

<script type="text/javascript">
     
function categoria(){

	if($('#GeTeslp_eslp_tipo').val() == "L"){
           	$('#GeTeslp_eslp_secr').hide();
            $('#eslp_valo').hide();
            $('#eslp_infc').hide();
            $('#cate_nomb').show();
            $('#eslp_fech').show();
            $('#esta_codi').show();
            
        }
 
    if($('#GeTeslp_eslp_tipo').val() == "M")
  	  {
            $('#cate_nomb').hide();
            $('#eslp_fech').show();
            $('#GeTeslp_eslp_secr').show();
            $('#eslp_valo').show();
            $('#eslp_infc').show();
            $('#esta_codi').show();
            
        }

       if($('#GeTeslp_eslp_tipo').val() == "")
  	  {
            $('#cate_nomb').hide();
            $('#eslp_fech').hide();
            $('#GeTeslp_eslp_secr').hide();
            $('#eslp_valo').hide();
            $('#eslp_infc').hide();
            $('#esta_codi').hide();
            $('#esta_codi').hide();
            
        }

    
    
}
 </script>

0

#4 User is offline   Daniel Galvan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 83
  • Joined: 04-March 12
  • Location:Mexico

Posted 05 May 2014 - 03:32 PM

Reutilizando tu codigo, tambien podria ser asi:

function categoria() {
    var selected = $('#GeTeslp_eslp_tipo').val();

    $('#cate_nomb').hide();
    $('#eslp_fech').hide();
    $('#GeTeslp_eslp_secr').hide();
    $('#eslp_valo').hide();
    $('#eslp_infc').hide();
    $('#esta_codi').hide();

    if(selected == "L") {
        $('#cate_nomb').show();
        $('#eslp_fech').show();
        $('#esta_codi').show();
    }
 
    if(selected == "M") {
        $('#eslp_fech').show();
        $('#GeTeslp_eslp_secr').show();
        $('#eslp_valo').show();
        $('#eslp_infc').show();
        $('#esta_codi').show();
    }
}

If my post was useful, Would you might give a vote +? / Si mi mensaje fue útil, ¿Le podrías dar un voto +?

Thanks / Gracias
1

#5 User is offline   erickMartinez 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 127
  • Joined: 20-December 13

Posted 05 May 2014 - 03:36 PM

View PostDaniel Galvan, on 05 May 2014 - 03:32 PM, said:

Reutilizando tu codigo, tambien podria ser asi:

function categoria() {
    var selected = $('#GeTeslp_eslp_tipo').val();

    $('#cate_nomb').hide();
    $('#eslp_fech').hide();
    $('#GeTeslp_eslp_secr').hide();
    $('#eslp_valo').hide();
    $('#eslp_infc').hide();
    $('#esta_codi').hide();

    if(selected == "L") {
        $('#cate_nomb').show();
        $('#eslp_fech').show();
        $('#esta_codi').show();
    }
 
    if(selected == "M") {
        $('#eslp_fech').show();
        $('#GeTeslp_eslp_secr').show();
        $('#eslp_valo').show();
        $('#eslp_infc').show();
        $('#esta_codi').show();
    }
}



muchas gracias amigo :D
0

#6 User is offline   Daniel Galvan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 83
  • Joined: 04-March 12
  • Location:Mexico

Posted 05 May 2014 - 03:44 PM

Que bien que te fue util!!!,

Saludos
If my post was useful, Would you might give a vote +? / Si mi mensaje fue útil, ¿Le podrías dar un voto +?

Thanks / Gracias
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users