Adicione o evento JavaScript ao JQGrid
-
10-07-2019 - |
Pergunta
Estou usando o plug -in JQGrid e quero adicionar o evento OnkeyPress a cada campo de formulário de edição.
Este código funciona para o IE8, mas falha no FF e IE7
{name: 'name', index: 'name', width: 200, editable: true,
sortable: false, search: true, editoptions: { readonly: false, size: 32,
'onKeyPress': 'if($("#cbLanguage").attr("checked"))togeo();' },
editrules: { required: true }}
Como modificar isso para fazê -lo funcionar no IE7 e no FF? Obrigado.
Solução
Encontrei a solução! Para atribuir o evento ao campo, preciso adicionar seguintes às editoções:
dataEvents:[{type:'keypress', fn: function(e) {
if($("#cbLanguage").attr("checked"))togeo(); }}]
Outras dicas
Parabéns a Karim79 por detectar a questão do evento.
Além disso, você será melhor usar uma função em vez de uma string implícita como uma função. Fácil de ler/manter.
name: 'name', index: 'name', width: 200, editable: true,
sortable: false, search: true, editoptions: { readonly: false, size: 32,
'onKeyUp': keyUpFn },
editrules: { required: true }}
function keyUpFn (){
$("#cbLanguage").is(':checked') ){
togeo();
}
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow