У меня есть индикаторы выполнения, которые генерируются на основе строк в наборе результатов запроса базы данных (полученном через MVC Razor):
foreach (var @row in rows) {
<li>
<div class="progress-bar [email protected]"></div>
<div class="label">@row.Name</div>
</li>
}
В результатах запроса есть столбец с именем @row.Value, который является значением, которое требуется строке выполнения, но я пытаюсь выяснить, как установить это значение для каждой строки выполнения по мере ее создания. Я пробовал различные селектора JQuery, а также вызывал функцию JavaScript сразу после строки выполнения div и передавал в @row.Value, но я не могу заставить ее работать.
Кроме того, индикаторы выполнения являются стандартными индикаторами выполнения JQuery, которые в настоящий момент настроены следующим образом:
$('.progress-bar').progressbar();
Любые предложения о том, как достичь этого?
РЕДАКТИРОВАТЬ:
Это закончило работать для меня:
$('#active-skill-list').find('li').each(function () {
var progressBar = $(this).find('.progress-bar');
progressBar.progressbar({
value: progressBar.data('value')
})
Если вы говорите о панели выполнения jquery UI, вы можете просто добавить это значение в свой дом
foreach (var @row in rows) {
<li>
<div class="progress-bar [email protected]" data-value="@row.value"></div>
<div class="label">@row.Name</div>
</li>
}
//что-то подобное в вашей части js
$('YourUlContainer').find('li').each(function(){
$(this).progressbar({ value: $(this).data('value') });
})
Цель состоит в том, чтобы добавить эту ценность в dom и вызвать каждый li с их значением. Но я бы предложил вам сделать это еще проще, используя css, изменив его значение с помощью js вместо использования плагина, если это необходимо.