Estoy alterando dinámicamente las opciones de una lista de selección. Estoy usando el complemento jqTransform. No se actualizará automáticamente, lo que no esperaba que fuera, pero puedo encontrar un método para actualizar la pantalla. Ni siquiera puedo encontrar un método para eliminarlo por completo.

Lo que me gustaría es encontrar un método como formelement.jqTransformUpdate () que solucione esto. ¿Algunas ideas?

5
Brad Wilkie 12 ago. 2011 a las 00:19

5 respuestas

La mejor respuesta

Sé que es una vieja pregunta, pero tal vez ayude a alguien. No pude encontrar la respuesta, así que busqué en el código jqtransform.js.

Solo comente esta línea:

if($select.hasClass('jqTransformHidden')) {return;}

Y luego, después de la ejecución del evento "onchange":

$('#container select').jqTransSelect();
3
Code Maverick 25 abr. 2012 a las 17:41

Con respecto a este:

Eso agrega otro menú desplegable a la página cada vez que lo llamo ahora

Cuando comentas esta línea:

if($select.hasClass('jqTransformHidden')) {return;}

Agregue esto justo debajo:

if($select.hasClass('jqTransformHidden')) $select.parent().removeClass();

No es una solución muy elegante, pero funcionó en mi caso, la nueva selección todavía está anidada dentro del niño y así sucesivamente, pero funciona bien.

0
Natan Streppel 25 sep. 2013 a las 21:05

Podría ser mejor, intente agregar un nuevo método en jqtransform.js:

$.fn.jqTransSelectRefresh = function(){
    return this.each(function(index){
        var $select = $(this);

        var i=$select.parent().find('div,ul').remove().css('zIndex');
        $select.unwrap().removeClass('jqTransformHidden').jqTransSelect();
        $select.parent().css('zIndex', i);

    });
}

Después de eso, simplemente llámelo cada vez que necesite actualizar el menú desplegable:

$('#my_select').jqTransSelectRefresh();
0
Fischer Tirado 30 jun. 2015 a las 18:58

Hola, intente lo siguiente para volver a aplicar el estilo de manera selectiva al cuadro recién creado o de selección devuelto por la solicitud ajax

$ ('# selección de contenedor'). jqTransSelect ();

0
kannetkeifer 16 sep. 2011 a las 06:54
function selectRating(rating) {
   $("#ratingModal .jqTransformSelectWrapper ul li a").each(function() {
     if (parseInt($(this).attr("index")) == rating - 1) {
         $(this).click();
     }
   });      
}

Una función JS que utilicé en mi propia aplicación para seleccionar una opción específica con la calificación dada. Creo que puede modificarlo para satisfacer sus necesidades.

La idea es utilizar un controlador de eventos .click para seleccionar una opción específica en la lista de selección transformada.

1
user851126 24 nov. 2011 a las 10:12