2017-02-04 5 views
0

У меня есть следующий вызов ajax. Ajax будет возвращать целочисленное значение, например: 4, и мне нужно добавить строку звездных изображений на основе целочисленного возврата. Например, если ajax возвращает целое число из 4, так что мне нужно добавить 4-значную строку изображения изображения из папки с активами. Я знаю, что я могу использовать цикл, но есть ли какой-либо метод упрощения, который можно просто повторить из целого числа и добавить строку изображения на основе целочисленного числа. СпасибоКоличество копий от общего числа

$.ajax({ 
type: 'GET', 
url: 'https://test.com/WebAPI/getItemRating?moduleid=video&itemid='+elem[col]['videoid'], 
data: {}, 
contentType: "application/x-www-form-urlencoded", 
dataType: "json", 
success: function (data) { 
    var count = Math.round(data); 
    var starsArr = ""; 

    // Before this i used loop 
    //$.each(data, functn (i, element) { 
    // starsArr += "&nbsp;<img alt='star' src='/videoAssets/Galeri Video/img/star.png'/>"; 
    //}); 

    return starsArr; 
    } 
}); 
+0

Возврат значения из функции успеха не делает ничего. AJAX является асинхронным. – Barmar

+0

Я не думаю, что есть простой ярлык для цикла. – Barmar

+0

Спасибо за консультацию. Тогда я просто придерживаюсь петли. – digit

ответ

0

Вы можете создать массив с несколькими копиями строки. Затем вы можете нарезать массив и объединить их, чтобы объединить их в новую строку.

var stars = Array(5).fill("<img alt='star' src='/videoAssets/Galeri Video/img/star.png'/>"); 
 

 
$.ajax({ 
 
    type: 'GET', 
 
    url: 'https://test.com/WebAPI/getItemRating?moduleid=video&itemid=' + elem[col]['videoid'], 
 
    data: {}, 
 
    contentType: "application/x-www-form-urlencoded", 
 
    dataType: "json", 
 
    success: function(data) { 
 
    var count = Math.round(data); 
 
    var starsHTML = stars.slice(0, count).join("&nbsp;"); 
 
    $("#stars").html(starsHTML); 
 
    } 
 
});

+0

Собственно, это то, что я ищу. Спасибо снова – digit

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