Bom dia!
Tenho uma dúvida em relação à javascript.
Tenho uma grid jquery no meu sistema, com várias colunas.
A questão é a seguinte: quando eu altero o valor de uma coluna e pressiono enter, a mesma é comitada.
Gostaria de saber como fazer para a mesma ter este mesmo comportamento quando eu clicar por exemplo com o mouse em um campo select existente em uma coluna e selecionar um valor.
Obs: já tentei da seguinte maneira:
[code]if(e.type == “click”){
…[/code]
Assim o problema é que o select abre mas já fecha no mesmo momento.
O que eu gostaria é que quando clicar na coluna ele abrir o select, e logo após eu selecionar um valor ele continuar com o código normalmente.
Obrigado.
O problema é o seguinte:
eu preciso que os dados somente sejam atualizados quando selecionado um campo do select.
Quando um dado é selecionado, ele tira o foco do select e atualiza a grid já com o novo campo que foi selecionado.
O problema é que quando é verificado da seguinte maneira:
if(e.type == "click"){
Assim ele abre o campo select e já fecha, persistindo o dado na linha da grid, não deixando o usuário selecionar nenhum dado
Ahhhhhhhh, não entendi nada.
Todo select possui um método chamado onchange, não?
A parte de perder o foco, você pode tratar no js.
Abre e fecha de imediato? O evento checa se está display = none?
Você precisa ficar “escutando” o evento onChange do select. Quando houver a mudança de valor, você trata do jeito que quiser o novo valor selecionado. No seu caso, você faz o “comite” com o novo valor
Surgiu agora outra dúvida:
como eu faço um bind para o evento onChange de um select de uma grid jquery?
Por exemplo, o evento click está fazendo assim:
$canvas.bind("click", handleClick);
Já consegui resolver o problema.
Obrigado.