latsrock
(Igorxsk8xhc)
January 25, 2011, 2:20pm
1
Bom pessoal, sou novo no forum e comecei a utilizar a ferramenta yii!
ja consegui solucionar grande parte dos meus problemas acompanhando as dúvidas do pessoal!
mais não achei nada do que preciso agora!
é o seguinte:
eu tenho dois dropdownlist, eu consegui fazer a consulta dos dois dropdown, só que tenho um problema, eu queria mostrar esses drop down da seguinte forma, quando eu selecionar um item do primeiro, ele recarregaria os itens do segundo! tipo um databind… do framework prado!
tenho outro problema, que é de um check box!
queria que quando ele não estivesse selecionado, ele desse um "display=none" em alguns campos do formulario, e checkado voltasse a tela…
Obrigado des de já!
igor
fredcox
(Fredcox)
January 25, 2011, 2:33pm
2
Usa o evento change do dropdownlist.
Exemplo:
$("#dropdown1 ").change(function() { //Aqui você põe o código para alterar valores da outra dropdown.
});
Você pode efetuar uma solicitação JSON($.ajax,$.post,$.get) e preencher a outra dropdown com os novos valores.
latsrock
(Igorxsk8xhc)
January 25, 2011, 3:26pm
3
não saquei direito como faz!
aqui abaixo segue meu código!
<?php echo $form->labelEx($model,'secao'); ?>
<?php
$secao = Secao::model()->with(array('conteudo'))->findAll();
$list = CHtml::listData($secao, 'idsecao','titulo');
echo $form->dropDownList($model,'secao',$list,array('empty'=>'Selecione uma Seção'));
?>
<?php echo $form->error($model,'secao'); ?>
<?php echo $form->labelEx($model,'categoria'); ?>
<?php
$categoria = Categoria::model()->findBysql("Select idcategoria,secao,idsecao from Categoria,Secao where secao = 1");
$lista = CHtml::listData($categoria, 'idcategoria', 'secao');
echo $form->dropDownList($model,'categoria',$lista,array('empty'=>'Selecione uma Categoria'));
?>
<?php echo $form->error($model,'categoria'); ?>
gusnips
(Gustavo)
January 25, 2011, 3:48pm
4
veja este link em que mostrei como fazer exatamente isto
latsrock
(Igorxsk8xhc)
January 25, 2011, 4:13pm
5
hmm… não consegui ainda com esse tópico!
fiz do mesmo jeito mais não consegui!
irei trabalhar mais um pouquinho em cima dele!
latsrock
(Igorxsk8xhc)
January 26, 2011, 4:52pm
6
Tentei mais não consegui!
segui o tópico certinho mais não consegui de jeito nenhum!
eu não consegui fazer o update do segundo dropdownlist!
tem alguma função que eu uso, que assim que eu selecionar o primeiro dropdown ele altera os valores option do segundo?
meu objetivo é assim que eu seleciono o dropdown1, o segundo carrega os dados que tem o id do primeiro!
latsrock
(Igorxsk8xhc)
January 26, 2011, 5:29pm
8
É agora deu certo, eu não tinha permitido nas actions =s, se fica tão doido que falta atenção
array('allow', // allow authenticated user to perform 'create' and 'update' actions
'actions'=>array('create','update'),
'users'=>array('@'),
),
Brigadão todos pela força.
latsrock
(Igorxsk8xhc)
January 28, 2011, 6:39pm
9
Estou com um problema de consulta!
tenho dois dropdownlist!
um chama-se seção!
quando eu escolho uma opção eu quero mostrar dois titulos em uma opção!
exemplo, do dropDown 2:
categoria - página!
eu consegui coletar categoria, mais n sei pegar o id que ela passa pra eu poder imprimir o id da página!
public function actionGetconteudo()
{
$categoria = Categoria::model()->findAll('secao=:secao',array(':secao'=>(int)$_POST['secao']));
$list = CHtml::listData($categoria,'idcategoria','titulo');
$conteudo = Conteudo::model()->findByPk();
$idconteudo = $conteudo->titulo;
foreach($list as $value => $name)
{
echo CHtml::tag('option',array('value'=>$value),CHtml::encode($name.'-'.$idconteudo),true);
}
}
como posso fazer está consulta??
obrigado desde já!
gusnips
(Gustavo)
January 28, 2011, 7:49pm
10
é necessário passar o id
como vc está fazendo a chamada?
latsrock
(Igorxsk8xhc)
January 28, 2011, 10:29pm
11
na chamada só tenho 2 dropdown!
o da seção e o da página!
mais ou menos!
<?php $CHtml::dropDownList('secao', '', $list,array('empty'=>'Selecione uma opção',
'ajax'=>array(
'type'=>'POST',
'url'=>CController .......,
'update'=>'#pagina1',
),
)); ?>
<?php CHtml::dropDownList('pagina1', '', $list,array(),array()): ?>
quero selecionar a opção de sesão, e o da página eu encontre a categoria, pois ja coloquei, mais não consigo resgatar o id da categoria pra informar a página como construir o titulo da opção…
teria que fazer uma consulta? ou declarar uma categoria para poder pegar o id dela ?
gusnips
(Gustavo)
January 28, 2011, 10:46pm
12
cara, eu não estou por dentro do seu sistema para saber o que "categoria" é ou onde esta declarado, nem os relacionamentos dela com os campos de dropDown
Sendo assim nao entendi nada do que você falou … postando mais informações talvez eu possa ajudar
latsrock
(Igorxsk8xhc)
January 31, 2011, 11:13am
13
vou citar um exemplo!
tenho 3 tabelas
tabela pais, id, nome …
tabela estado id, id_pais, nome…
tabela cidade… id, id_pais, id_estado, nome…
ai eu tenho um formulario, vamos supor que seja cadastro de cliente!
ai dentro dele, eu tenho 2 dropdown!
um de pais, que assim que eu seleciono, a tabela de cidade e estado fica na mesma opção
exemplo, selecionei no dropdown pais Brasil!
no seguinte iria me aparecer as opções!
estado | cidade
São paulo - guarulhos…
São paulo - São paulo…
e assim por diante!
eu consegui fazer aparecer as estado, só que não consegui resgatar o id dela, pra poder pegar o cidade!