2017-02-14 3 views
0

Я использую самозагрузки прогресс бар, который устанавливается на нольИспользование JQuery для инициализации индикатор хода выполнения начальной загрузки

<div class="progress-bar progress-bar-success" id="p1" 
    role="progressbar" aria-valuenow="0" 
    aria-valuemin="0" aria-valuemax="100" style="width:0%"> 

Я использую следующий код JQuery инициализацию прогресс бар

$.ajax({ 
     type: "POST", 
     dataType: "json", 
     url: "myurl.php", 
     data: data 
    }).done(function(msg) { 
    console.log(msg); 
    var pid = msg.pid; 
    var colour = msg.colour; 
    var comp = msg.comp; 
    console.log('pid = ' + pid); 
    console.log('colour = ' + colour); 
    document.getElementById(pid).style.width = comp; 
    document.getElementById(pid).innerHTML = comp + '% Complete'; 
    document.getElementById(pid).classList.add(colour); 
    }); 

I получаю действительные данные из запроса ajax,

Object {pid: "p1", comp: 7, colour: "progress-bar-success"} 

Но индикатор выполнения не обновляется. Если я инициализирую панель в html, начинающуюся с 1%, она работает с использованием вышеуказанного кода. Есть ли способ получить эту инициализацию с помощью jquery?

+0

вы пропустили '%', добавляя ширину? или это опечатка? –

ответ

1

Вы должны добавить «%» при установке ширины индикатора выполнения;

document.getElementById(pid).style.width = comp + "%"; 

Jquery Решение

$("#"+pid).css('width', comp + "%"); 
Смежные вопросы