Si desea actualizar un widget que ya ha sido inicializado a continuación, se puede refrescar cada tipo widget usando su respectivo función:
$('.ui-btn').button('refresh');
Aviso utilicé la clase .ui-btn
para seleccionar la culata En los elementos, esta clase se agrega una vez que se inicializa el botón, por lo que puede estar seguro de que está actualizando un widget de botón ya inicializado.
Docs: http://jquerymobile.com/demos/1.1.0-rc.1/docs/buttons/buttons-methods.html
Si necesita inicializar un widget que aún no se ha inicializado, entonces simplemente omiten la 'refresh'
o utilizar .trigger('create')
: Aviso
$('[data-role="button"], button, input[type="button"], input[type="submit"]').not('.ui-btn').button();//or .trigger('create');
aquí omito los widgets ya inicializadas usando .not('.ui-btn')
por lo que esto solo inicializará widgets no inicializados. Si intentas inicializar un widget que ya se ha inicializado, obtienes un error (lo mismo si tratas de actualizar un widget que aún no se ha inicializado).
actualización
Si el HTML está siendo emitida por el servidor a continuación, puede inicializar los reproductores antes de añadirlos a la DOM:
$.ajax({
...
success : function (serverResponse) {
var $out = $(serverResponse);
//if there is a container with elements inside it, use `.find()`,
//if all the elements are siblings at the top level then use `.filter()`
$out.find('a').button();
$('body').append($out);
}
});
También puede utilizar la función .buttonMarkup()
para actualizar el botón de exclusión: http://jquerymobile.com/demos/1.1.0-rc.1/docs/buttons/buttons-options.html
¿Ejecuta una función como parte de la devolución de llamada 'del éxito' para la llamada de Ajax? –
¿Puedes publicar tu código JS? ¿Qué widgets específicamente estás tratando de "actualizar"? – Jasper