Yii Framework Forum: Actualizar un campo mediante una funcion ajax, js, etc - Yii Framework Forum

Jump to content

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

Actualizar un campo mediante una funcion ajax, js, etc Rate Topic: -----

#1 User is offline   rookie5 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 8
  • Joined: 25-May 12

Posted 29 May 2012 - 11:56 AM

Hola a todos!!!

Soy nuevo en el foro. Me gustaría que me ayudaran a realizar una actualización o modificación de un campo mediante una función que calcule una edad. Lo que tengo es lo siguiente, el widgets. Después que el usuario selecciona la fecha de nacimiento, debería de colocar la edad automáticamente

$this->widget('zii.widgets.jui.CJuiDatePicker',
array(
'model'=> $model,
'attribute' => 'FecNacimiento',
'language' => 'es',
'value' => $model->FecNacimiento,
'options' => array(
'dateFormat' => 'yy-mm-dd',
'constrainInput' => 'false',
'changeYear' => 'true',
'duration' => 'fast',
'showAnim' => 'slide',
'onSelect' => 'js: function() {
//Calcular la fecha
//Devolver el resultado al $model->FecNacimiento
}'
),
)



Este seria el html, donde debería de quedar el resultado

<div class="row" id="idEdad">
<?php echo $form->labelEx($model,'Edad'); ?>
<?php echo $form->textField($model,'Edad'); ?>
<?php echo $form->error($model,'Edad'); ?>
</div>
0

#2 User is offline   Oliver Cera 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 5
  • Joined: 03-August 11
  • Location:Venezuela

Posted 29 May 2012 - 06:59 PM

Supongamos que tu modelo es 'Usuario' (class Usuario)

Tendrias que actualizar con JQuery o simplemente javascript ese campo en la funcion que onSelect (si es esta la correcta no he verificado) supongo que averiguaste en la doc.

Te dejo el ejemplo con tu código.

Espero te haya guiado de algo, si no pregunta de nuevo a ver que te falta

Saludos.

View Postrookie5, on 29 May 2012 - 11:56 AM, said:

$this->widget('zii.widgets.jui.CJuiDatePicker',
array(
'model'=> $model,
'attribute' => 'FecNacimiento',
'language' => 'es',
'value' => $model->FecNacimiento,
'options' => array(
'dateFormat' => 'yy-mm-dd',
'constrainInput' => 'false',
'changeYear' => 'true',
'duration' => 'fast',
'showAnim' => 'slide',
'onSelect' => 'js: function() {
$('#Usuario_Edad').val( CALCULO_FECHA_ACTUAL_MENOS_FECHA_SUM );
}'
),
)

<div class="row" id="idEdad">
<?php echo $form->labelEx($model,'Edad'); ?>
<?php echo $form->textField($model,'Edad'); ?>
<?php echo $form->error($model,'Edad'); ?>
</div>

0

#3 User is offline   rookie5 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 8
  • Joined: 25-May 12

Posted 31 May 2012 - 08:34 AM

Gracias Oliver...algo así pude resolver pero no quede muy conforme, bueno seguire viendo una forma mas diseñada, es decir, una manera donde pueda separar el js y colocarlo en un archivo independiente...gracias pude resolverlo de la siguiente manera:

Después de realizar el calculo de la edad en la función, se lo asigno al selector
$("#idEdad").val(edad);

y después se lo asigno a un input que tiene el código php para la asignación del modelo

<div class="row">
<?php echo $form->labelEx($model,'Edad'); ?>

<input type="text" id="idEdad" readonly="true" <?php echo $form->textField($model,'Edad');?>>
<?php echo $form->error($model,'Edad'); ?>
</div>
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