У меня есть страница отчета в моем приложении, и нет указания, что отчет запускается при нажатии кнопки. Поэтому я хочу добавить некоторый индикатор, похожий на старый курсор мыши в Access. Но я решил попробовать использовать JQuery Progress Bar.Индикатор выполнения JQuery, показывающий, что что-то происходит на странице
Я пошел на официальную страницу JQuery Progress Bar и нашел код для интеграции в мой проект. То, что я это на странице ASPX:
В заголовке:
<!--//**********************************
// Test Indeterminate Progress Bar
//********************************** -->
<script type="text/javascript">
//Total out of range dialog
$(function() {
$("#progressbar").progressbar({
value: false
});
$("button").on("click", function (event) {
var target = $(event.target),
progressbar = $("#progressbar"),
progressbarValue = progressbar.find(".ui-progressbar-value");
progressbar.progressbar("option", "value", false);
});
});
</script>
<style>
#progressbar .ui-progressbar-value {
background-color: #ccc; }
</style>
В теле:
<div id="progressbar" style="visibility:hidden"></div>
Так что теперь, что я ожидал, чтобы сделать заключается в том, чтобы сделать некоторый вызов в коде в событии OnClick кнопки, чтобы сделать индикатор выполнения видимым, а затем, когда код завершил выполнение, я снова сделаю его невидимым.
Прежде всего, это правильное предположение? И, во-вторых, как мне это сделать? Intellisense не распознает «progressbar» как объект.
Ваше предположение неверно. Вы не можете обновлять интерфейс непосредственно в коде позади, код за запусками на сервере и обновления пользовательского интерфейса происходят, когда сервер возвращает обновленную страницу в браузер, javascript запускается в браузере. Если вы хотите, чтобы что-то происходило на сервере и индикатор выполнения в UIU, вам нужно сделать ajax-вызов веб-службы. Есть несколько элементов управления хаккой ajax, которые вы можете использовать для этих «UpdatePanel» и «UpdateProgress», они являются неуклюжим и тяжелым, но генерируют для вас весь код на стороне клиента. –
Согласен с неправильным допущением. Лучший способ сделать это - создать службу, которая вызывается через пользовательский интерфейс (в вашем случае jQuery) и выполняет обновление. Вот два примера, которые могут помочь: http://jqueryasp.net/upload-multiple-image-file-progress-bar-asp-net-using-jquery/ http://jqueryasp.net/show-progress -бар-Asp-сетчатое использование-JQuery / – jdruid