2013-09-19 3 views
2

Я пытаюсь показать загрузчик, загружая флажки, используя код jquery mobile 1.3.2 в приложении для Android, но он не работает, может ли кто-нибудь помочь мне в том, что проблема и как заставить его работатьЗагрузка Spinner не отображается при загрузке флажков

Вот мой код:

function onChangeCarrera(idCarrera,idEvento){ 

    $.mobile.loading('show', { 
     text: 'Cargando Corredores', 
     textVisible: true, 
     theme: 'a', 
     html: ""}); 

    cargaCorredores(idCarrera,idEvento); 

    resetMontoTotal(); 

    $.mobile.loading('hide'); 
} 

function cargaCorredores(idCarrera,idEvento){ 
    var dom = jsel(json); 

    var carrera = dom.select('//Eventos/*[@id='+idEvento+']/carreras/*[@nroCarrera='+idCarrera+']'); 

    //Muestra Label 
    $("#lblCorredores").text("Selección de corredores"); 

    var html; 

    for (var x=1; x<=TipoApuesta.patas; x++){ 
     html='<fieldset id="carrera"+x+"_fieldset" data-type="horizontal" data-role="controlgroup"><legend>'+eval("TipoApuesta.p"+x+"Nombre")+'</legend>'; 
     $.each(carrera.corredores, function(i, corredor) { 
      html+='<input type="checkbox" onclick="resetMontoTotal();" value="'+corredor.nroCorredor+'" name="checkbox_'+idCarrera+'_'+idEvento+'_'+corredor.nroCorredor+'" id="checkbox_'+idCarrera+'_'+idEvento+'_'+corredor.nroCorredor+'" class="corredores'+x+'" /><label for="checkbox_'+idCarrera+'_'+idEvento+'_'+corredor.nroCorredor+'">'+corredor.nroCorredor+'</label>'; 
     }); 
     $("#carreras"+x).html(html+'</fieldset'); 
     $("#carreras"+x).trigger("create"); 
    } 

    if (TipoApuesta.patas<4){ 
     for (var j=4; j>TipoApuesta.patas; j--){ 
      $("#carreras"+j).html(''); 
      $("#carreras"+j).trigger("create"); 
     } 
    } 

} 

Я использую JSON с предустановленным страницей, чтобы сделать флажки. Большое спасибо!

+0

если вы переместите его за пределы функции, это будет отображаться? это происходит только в андроиде? – Omar

+0

происходит в браузере android и pc. вы хотите переместить $ .mobile.loading ('show') снаружи? – fabrizotus

ответ

0

Я где-то читал о необходимости использования интервальных переменных. У меня была такая же проблема, и это разрешило ее, хотя для меня это немного «взломанно».

var interval = setInterval(function() { 
     $.mobile.loading('show', { 
      text: 'Resuming...', 
      textVisible: true, 
      theme: 'a', 
      html: "" 
     }); 
     clearInterval(interval); 
    }, 1); 

Мне пришлось использовать другое имя переменной для интервалов на каждой странице моего приложения.

Смежные вопросы