Ajax - Как получить процент прогресса загрузки страницы (Dotnetnuke C#)
Автор сценария:
$(document).ready(function () {
$('#btnNext').click(function (e) {
e.preventDefault();
});
var options = {
beforeSend: function () {
$("#progress").show();
//clear everything
$("#bar").width('0%');
$("#message").html("");
$("#percent").html("0%");
},
uploadProgress: function (event, position, total, percentComplete) {
$("#bar").width(percentComplete + '%');
$("#percent").html(percentComplete + '%');
},
success: function () {
$("#bar").width('100%');
$("#percent").html('100%');
},
complete: function (response) {
$("#message").html("<font color='green'>" + response.responseText + "</font>");
},
error: function () {
$("#message").html("<font color='red'> ERROR: unable to upload files</font>");
}
};
$("#form1").ajaxForm(options);
});
HTML:
<form id="form1" method="post" enctype="multipart/form-data">
<div>
<input type="file" size="60" name="myfile" />
<input type="submit" value="Ajax File Upload" />
<div id="progress">
<div id="bar"></div>
<div id="percent">0%</div>
</div>
<br />
<div id="message"></div>
</div>
Я был протестирован с Webform (C#). Это сработало. Но, Dotnetnuke не работает. (Постбэк и ничего не меняется). Есть другой способ для Dotnetnuke, чтобы получить процент прогресса загрузки страницы? - Спасибо за чтение -
1 ответ
Решение
Попробуйте удалить <form>
пометьте вокруг вашего модуля, потому что DNN уже записывает тег формы на страницу, окружающую тему и модули. Вы можете изменить последнюю строку в вашей логике jquery для ссылки на форму, уже загруженную DNN.
$("form:first").ajaxForm(options);