Yii Framework Forum: [Resolvido] Readonly Para Dropdownlist Do Yiibooster - Yii Framework Forum

Jump to content

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

[Resolvido] Readonly Para Dropdownlist Do Yiibooster Rate Topic: -----

#1 User is offline   Gustavo Gonçalves 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 40
  • Joined: 02-October 12
  • Location:Belo Horizonte, MG - Brasil

Posted 06 December 2012 - 07:00 AM

Bom dia pessoal, preciso de uma ajuda.

Quando coloco um componente dropDownListRow ou datepickerRow do Yiibooster como readonly, ele apenas coloca o campo com o aspecto "readonly", porém permite alteração de dados. Com o Input comum (textFieldrow) dá certo.

Não posso colocar o campo como "disabled", porque preciso que os dados do formulário sejam passados para o Controller.

Segue um exemplo do código que estou usando:
?php echo $form->dropDownListRow($model, 'id_tipopgto', CHtml::listData(Tipopg::model()->findAll(), 'id', 'tipo'), 
					array('empty' => '--Selecione--','class'=>'span8', 'readonly'=>$readonly)); 


Já usei os valores "true" ou "readonly" na variável $readonly do código acima ... mas ambas continuam permitindo alteração.

Será que isso tem solução ou vou ter que fazer um IF no meu programa, para exibir o Dropdownlist apenas quando for editável ... e quando for readonly, exibo um Input comum ?

Em anexo, podem ver que o campo está "cinza" como se fosse readonly, porém permite mudar os valores.

Abraços,

Attached File(s)


0

#2 User is offline   Newerton 

  • Master Member
  • PipPipPipPip
  • Yii
  • Group: Members
  • Posts: 821
  • Joined: 27-April 10
  • Location:Campo Grande/MS - Cambé/PR, Brasil

Posted 06 December 2012 - 07:28 AM

Gustavo,

Se você tiver usando uma outra opção para habilitar e desabilitar o campo, faz com disabled.

Os campos <select> com readonly são os únicos que o usuário tem acesso para alterar, o que não poderia ocorrer.

Ai você cria um campo type="hidden" com o mesmo nome, id e valor. Assim você consegue manter o <select> sem alteração.

Se precisa habilitar via jquery, coloca um .remove() no campo type="hidden", senão quando for submeter o formulário, o $_POST prioritário sempre será do input hidden.
Newerton Vargas de Araújo
0

#3 User is offline   Gustavo Gonçalves 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 40
  • Joined: 02-October 12
  • Location:Belo Horizonte, MG - Brasil

Posted 06 December 2012 - 08:10 AM

Eita ... lá vamos nós dar nó no sistema então.
Já deviam ter resolvido esse negócio do <select> heim !!

Fiz assim Newerton:
<?php 
echo $form->dropDownListRow($model, 'id_tipopgto', CHtml::listData(Tipopg::model()->findAll(), 'id', 'tipo'), 
					array('empty' => '--Selecione--','class'=>'span8', 'disabled'=>$readonly));
if ($readonly) { echo $form->hiddenField($model,'id_tipopgto'); }
?>	


Vou usar o disabled por padrão... e fiz um if pra adicionar o hidden apenas quando o disabled ativar. Assim não perco a informação no $_POST.

Valeu a dica !!
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