last day (15 days later) » 

2:26 PM
0
A: disable select no cakephp

Thiago FriedmanTente da seguinte maneira: <?= $this->Form->input('compra', array('class' => 'form-control', 'placeholder' => 'Filtre pelo nĂºmero da compra', 'value' => @$_GET['data']['compra'], 'onchange' => "ha...

 
Fiz desta maneira, mas quando seleciono a opção que o value é 30, o select agente_id, continua habilitado.
 
ok, mas ele está entrando na função do handleSelect ? caso esteja veja o que vem no this.value e poste aqui
 
estou tentando debugar no fireBug, mas no console não mostra nada.
 
coloque um console.log dentro da função antes da condição
 
desta maneira? ` function handleSelect() { console.log(this); if (this.value == '30') { document.getElementById('agente_id').disabled = true; } }`
 
2:26 PM
@MichelHenriq isso, só pra ver se está ta entrando na função, se estiver entrando e me dê o retorno
 
No console não aparece nada, e eu deixei o outro select disabled, e eu seleciono a opção que tem o value 30, e o select não sai do disabled..
 
@MichelHenriq você deu um console.log(this) ?
 
opa
minha função está assim
function handleSelect() {
console.log(this);
if (this.value == '30') {
document.getElementById('agente_id').disabled = true;
}
}
e eu estou chamando assim
'onchange' => "handleSelect(this);",
 
quando vou ver no console do firebug
 
2:30 PM
ele fica undefined ?
 
não
aparece window gerar relatorios
ai eu testei
o console.log('teste')
e apareceu
então na função está entrando
só que não está passando o value
 
entendi
nossa quando você coloca o console.log(this)
ele aparece window gerar relatorios ?
 
sim
olha aí
 
um momento
 
eu passei no console.log
this.value
e apareceu undefined
 
2:34 PM
é engraçado
esse this parece que ele está pegando do form ali
ao invés de pegar do input
 
meu input está desta forma
$this->Form->input('colaborador_id', array(
'class' => 'form-control',
'empty'=>'Filtrar todos colaboradores',
'value'=> @$_GET['data']['colaborador_id'],
'onchange' => "handleSelect(this);",
))
o value dele, é resgatado pelo GET
será que é isso?
 
é então não sei se daria certo, mas pode fazer algumas tentativas
por exemplo
'onchange' => "handleSelect(@$_GET['data']['colaborador_id']);"
vou dar uma pesquisada 1 s
 
beleza
to testando
 
ai na função pode deixar assim
function handleSelect(var parametro) {
console.log(parametro);
if (this.value == '30') {
document.getElementById('agente_id').disabled = true;
}
}
'onchange' => "handleSelect(document.getElementById('compra'));"
 
compra?
não entendi
 
2:47 PM
seu input compra
que na verdade eu usei esse pra responder a pergunta rs
 
Não foi ainda
caramba, que problema estranho
será que o form helper do cake suporta?
 
então to pesquisando e não achei ninguem ainda
que conseguiu passar o campo como parametro
vou pesquisar mais
 
to pesquisando aqui também
 
assim ele ta entrando na função
então depois que entrar na função tenta ver se consegue buscar o campo assim
document.getElementById('compra').value
só tem que ver qual é id certinho do campo ali
 
joga esse document dentro do console.log?
 
2:53 PM
pode ser
ai você vai vendo todos elementos da página, compreende
 
kcta
 
já volto, vou almoçar e ai vemos
 
consegui
function handleSelect() {
console.log(document.getElementById('colaborador_id').value);
if (this.value == '30') {
document.getElementById('agente_id').disabled = true;
}
}
 
mostrou o valor certinho ?
 
fazendo com o proprio campo que está chamando
sim
 
2:55 PM
essa é uma solução
 
um gambiarra solution
rs
 
não é a mais bonita, negócio era ver como passar o parametro lá
depois pesquiso melhor ;)
ja volto
 
beleza
obrigado
vou te favoritar lá na pergunta
tks
 
beleza, valeu !
 

last day (15 days later) »