Javascript 基于变量改变img src';循环中的s值
我使用jquery getJSON函数从JSON文件调用内容,它返回一个名为items的集合,有两个值:Javascript 基于变量改变img src';循环中的s值,javascript,jquery,arrays,for-loop,Javascript,Jquery,Arrays,For Loop,我使用jquery getJSON函数从JSON文件调用内容,它返回一个名为items的集合,有两个值: 介于1和10之间的整数值 一些文本 然后,在jquery中,我运行每个循环,遍历数组项,并基于整数值,试图以图像标记为目标来更改其源,但它不起作用 此外,我在页面上使用引导来显示旋转木马中的文本内容,这很好。把下面的代码加起来。根据我的测试,似乎每次检查都放在jquery中时,系统都会一次性运行整个循环,最后的迭代条件会应用到div 有人能帮我阻止这种事情发生吗 $.getJSON("/sa
$.getJSON("/samplecsat.json", function(result) {
myarr = result.items;
console.log("result is: " + JSON.stringify(result.items));
console.log("total count is: " + result.items.length);
total = result.items.length;
$.each(myarr, function(i, field) {
x = field["Survey Rating"];
if (i == 0) {
console.log("YAY its the first iteration" + i);
if (x < 8) {
dsat = dsat + 1;
$('<div class="item active" style="color:red"><em>' + field["Customer Verbatim"] + '</em></div>').appendTo('.carousel-inner');
$("#myCarousel").on('slide.bs.carousel', function() {
$("#customersentiment").attr("src", "/csp/angry.gif");
});
} else {
sat = sat + 1;
$('<div class="item active" style="color:green">' + field["Customer Verbatim"] + ' </div>').appendTo('.carousel-inner');
console.log("it is a csat with rating:" + " " + field["Survey Rating"])
$("#myCarousel").on('slide.bs.carousel', function() {
$("#customersentiment").attr("src", "/csp/happy.gif");
});
}
} else {
if (x < 8) {
dsat = dsat + 1;
$("#customersentiment").attr("src", "/csp/angry.gif");
$('<div class="item" style="color:red"><em>' + field["Customer Verbatim"] + '</em></div>').appendTo('.carousel-inner');
console.log(" its a dsat with rating:" + " " + field["Survey Rating"]);
$("#myCarousel").on('slide.bs.carousel', function() {
$("#customersentiment").attr("src", "/csp/angry.gif");
});
} else {
sat = sat + 1;
$("#customersentiment").attr("src", "");
$('<div class="item" style="color:green"><em>' + field["Customer Verbatim"] + '</em></div>').appendTo('.carousel-inner');
console.log("it is a csat with rating:" + " " + field["Survey Rating"])
$("#myCarousel").on('slide.bs.carousel', function() {
$("#customersentiment").attr("src", "/csp/happy.gif");
});
}
}
})
console.log("Total DSATs by Js: " + dsat);
console.log("Total CSATs by Js: " + sat);
console.log("Total item count is: " + total);
satpercentage = (sat * total / 100) * 100 + "%";
console.log("percentage is: " + sat * total / 100);
console.log("total is second one:" + total);
});
$.getJSON(“/samplecsat.json”),函数(结果){
myarr=结果项;
log(“结果是:+JSON.stringify(result.items));
log(“总计数为:“+result.items.length”);
总计=结果.items.length;
$.each(myarr,函数(i,字段){
x=字段[“调查评级”];
如果(i==0){
log(“是的,它是第一次迭代”+i);
if(x<8){
dsat=dsat+1;
$(''+字段[“客户逐字记录”]+'')。附加到('.carousel-inner');
$(“#myCarousel”).on('slide.bs.carousel',function(){
$(“#customersentiment”).attr(“src”,“csp/angry.gif”);
});
}否则{
sat=sat+1;
$(''+字段[“客户逐字记录”]+'')。附加到('.carousel-inner');
log(“这是一个评级为“+”+字段[“调查评级”]”的csat)
$(“#myCarousel”).on('slide.bs.carousel',function(){
$(“#customersentiment”).attr(“src”,“csp/happy.gif”);
});
}
}否则{
if(x<8){
dsat=dsat+1;
$(“#customersentiment”).attr(“src”,“csp/angry.gif”);
$(''+字段[“客户逐字记录”]+'')。附加到('.carousel-inner');
log(“这是一个评级为“+”+字段[“调查评级”])的dsat;
$(“#myCarousel”).on('slide.bs.carousel',function(){
$(“#customersentiment”).attr(“src”,“csp/angry.gif”);
});
}否则{
sat=sat+1;
$(“#customersentiment”).attr(“src”,“src”);
$(''+字段[“客户逐字记录”]+'')。附加到('.carousel-inner');
log(“这是一个评级为“+”+字段[“调查评级”]”的csat)
$(“#myCarousel”).on('slide.bs.carousel',function(){
$(“#customersentiment”).attr(“src”,“csp/happy.gif”);
});
}
}
})
log(“按Js计算的总dsat:+dsat”);
console.log(“总CSAT,按Js:+sat计算”);
console.log(“项目总数为:“+Total”);
sat百分比=(sat*总计/100)*100+“%”;
控制台日志(“百分比为:”+sat*总计/100);
console.log(“总计是第二个:“+total”);
});
尝试通过缩进结构阅读代码太难了。我可以更改代码以显示每个条件的作用,并可以确定哪个条件不起作用,如果有帮助的话。感谢devlin花时间为他清理。您的问题是为什么$(“#CustomerEntity”).attr(“src”,…)
是否总是被上一次迭代覆盖?@BShaps是的,似乎循环正在完成,$(“#CustomerEntity”).attr(“src”,…)受到上一次迭代的影响。