[SOLUCIONADO]Disparar evento automaticamente desde ef_editable

Richard, un favor como puedo disparar desde un ef_editable, sin tener que dar enter o ir al botón filtrar que tiene el evento,
la idea es que sobre dicho ef_editable se captura una identificación por medio de un lector de tarjetas, queremos que se dispare automáticamente sin necesidad de salir del ef o de presionar el botón filtrar.
Funciona solo hasta mostrar el alert

{$this->objeto_js}.evt__per_doc_ide_numero__procesar = function(es_inicial) {
if (! es_inicial) {
alert(‘ENTRA’);
this.set_evento( new evento_ei(‘filtrar’, true, ‘’ ));
}
}

Gracias

Hola Jhon,

para ello debes capturar el keycode via un metodo, comparar contra el que quieres y en dicho caso disparar el evento.

Vas a tener que agregar un metodo X el cual vas a asignar para que se dispare en el evento “onkeydown” , luego dentro de ese metodo evaluas el keycode como te decia arriba.

Saludos

Richard, un favor me puedes asesorar el porque el siguiente JS no dispara el evento filtrar del filtro ? solo llega hasta el mensaje del alert; es decir que si pasa por ahí

{$this->objeto_js}.ini = function () {
this.ef(‘lugres_docente’).input().onkeyup = function(tecla) {
if (tecla.which == 13) {
alert(‘enter’);
this.set_evento( new evento_ei(‘filtrar’, true, ‘’ ));
}
}
}

he probado sin resultados con el nombre completo evt__filtro__filtrar, this.controlador.set_evento

Gracias

Se soluciona llamnado el evento en el mismo JS

echo "
{$this->objeto_js}.ini = function (es_inicial) {
this.ef(‘lugres_docente’).input().onkeyup = function(tecla) {
if (tecla.which == 13) {
{$this->objeto_js}.evt__lugres_docente__procesar (es_inicial);
//this.set_evento(new evento_ei(‘filtrar’, true, ‘’ ));
}
}
}

          {$this->objeto_js}.evt__lugres_docente__procesar = function(es_inicial) {
            var asistencia_registrada = asistencia_js[0];
            if (! es_inicial && ! asistencia_registrada) {
                this.set_evento( new evento_ei('filtrar', true, '' ));
            }
          }

";