He modificado la tablas de datos filtro de entrada en un Jquery Mobile filtro de búsqueda, que también incluye un botón de borrar, para borrar el campo de entrada.

Esto sólo funciona la mitad del camino, porque cuando hago clic en eliminar, el campo de entrada se borra PERO las tablas no se actualiza.

Así que estoy buscando algunos consejos sobre cómo actualizar la tabla al hacer clic en personalizar mi botón de borrar en el interior de la _fnFeatureHtmlFilter función?

El código a continuación muestra cómo puedo configurar el JQM de búsqueda. No creo que sea útil para responder a la pregunta, aunque…

    /* jqm search input */
    sSearchStr = oSettings.oInit.bJQueryMobileUI == true ? '<input placeholder="Filtern" data-type="search" data-theme="'+DataTable.ext.oJQMthemes.wrapperTheme+'" />' : 
         ( (sSearchStr.indexOf('_INPUT_') !== -1) ?
             sSearchStr.replace('_INPUT_', '<input type="text" />') :
                sSearchStr==="" ? '<input type="text" />' : sSearchStr+' <input type="text" />' );
    var nFilter = document.createElement( 'div' );
    /* jqm wrapper classes */
    nFilter.className = oSettings.oInit.bJQueryMobileUI == true ? "ui-block-c "+oSettings.oClasses.sFilter : oSettings.oClasses.sFilter;
    oSettings.oInit.bJQueryMobileUI == true ? $(nFilter).html(sSearchStr) : $(nFilter).html('<label>'+sSearchStr+'</label>');

Gracias por algunos consejos!

OriginalEl autor frequent | 2012-02-23

2 Comentarios

  1. 9

    Encontrado una solución:

     $('.dataTables_filter .ui-input-clear').live('click', function(e) {    
          jqFilter.val("");
          jqFilter.trigger('keyup.DT');
          });

    Este se une al botón de borrar. Así que cuando se hace clic en estoy ajustando el valor de entrada para «» manualmente, porque el JQM botón borrar no parece muy claro que la entrada en sí.

    Con mi aclaró de entrada me desencadenar una keyup en la entrada. Esto disparará la normal de tablas de datos rountine, que desencadenará el fnFilter función, porque ahora jqFilter.el valor no coincide con el término de búsqueda anterior. Porque jqFilter está vacía fnFilter mostrará toda la tabla de nuevo.

    Tal vez útil para alguien más, también.

    Así que muy útil. No lo puedo creer, pero sí. Gracias por esto! Es una lástima que las tablas de datos plug-in no tiene una elegante manera de controlar a la búsqueda/filtro a través de JS.

    OriginalEl autor frequent

  2. 5

    Usted puede a través de programación borrar el filtro pidiendo a las tablas de datos de la API de búsqueda de cadena vacía:

    $('#myTable').dataTable().fnFilter('');

    o si usted ya tiene una referencia de objeto:

    oMyTable.fnFilter('');

    Gracias a todos los colaboradores, pero en realidad me encontrar esta respuesta más concisa y al grano.

    OriginalEl autor James McCormack

Dejar respuesta

Please enter your comment!
Please enter your name here