Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 根据要循环的元素数增加引导进度条百分比_Javascript_Jquery_Css_Twitter Bootstrap - Fatal编程技术网

Javascript 根据要循环的元素数增加引导进度条百分比

Javascript 根据要循环的元素数增加引导进度条百分比,javascript,jquery,css,twitter-bootstrap,Javascript,Jquery,Css,Twitter Bootstrap,使用jQuery,我试图根据JS数组中的元素数量来增加引导进度条的一部分,它必须循环并执行AJAX请求 我的计划是得到数组的长度,除以要通过的进度条的总百分比(本例中为60%),然后除以长度,得到每个循环应该增加多少百分比 到目前为止,我的代码是: function savedata(qid) { var answerslen = choiceoptions.length; //We have 60% of the bar to clear looping these,

使用jQuery,我试图根据JS数组中的元素数量来增加引导进度条的一部分,它必须循环并执行AJAX请求

我的计划是得到数组的长度,除以要通过的进度条的总百分比(本例中为60%),然后除以长度,得到每个循环应该增加多少百分比

到目前为止,我的代码是:

function savedata(qid) {

      var answerslen = choiceoptions.length;

     //We have 60% of the bar to clear looping these, so work out increment
     var proginc = 60 / answerslen;

     choiceoptions.forEach(function(entry) { //Loop through array

         $.ajax({
             method: "post",
             url: "/../save",
             data: { qid: qid, answer: entry }
         })
        .done(function( msg ) {

          var curprog = ( 100 * parseFloat($('#progressbar').css('width')) / parseFloat($('#progressbar').parent().css('width')) );

          var newprog = parseInt(curprog) + parseInt(proginc);

          $("#progressbar").css('width', newprog);


        });

    });

}
这并没有按预期工作,而是在第一个循环中将进度直接发送到100%以上。有人能帮我做到这一点吗

非常感谢

可待因可能有帮助:

以下是我的做法:

如果您的进度条在示例中已经为60%(或.6或60),则意味着您还有40%(或.4或40)要走。我假设你还有40个问题,或者至少还有一些问题可以被你剩余的2、4、5、8或10整除;此值将归因于上面的输入变量。如果是这种情况,则查找当前进度条宽度量的基本公式为((60+该“条目”值的金额)/100)*100


无需推导当前进度条宽度,因为在这种情况下,计算百分比的数学相当简单

你能用jsfiddle、snippet或codepen发布一个例子吗?@silviagreen我能用AJAX调用等实现吗?我现在就试试。给你:我建议用回声检查。基本上,使用
alert(variable)
console.log(variable)
从下到上检查使用的每个变量,以减少错误可能性。然后,你可以找出问题所在。我不明白,条形图从零开始,对于数组中的每个元素,你填充条形图以达到100%?