Ajax - 如何获得页面加载进度的百分比(Dotnetnuke C#)

时间:2017-04-28 03:15:15

标签: asp.net ajax dotnetnuke-8

脚本:

$(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 个答案:

答案 0 :(得分:1)

尝试删除模块周围的<form>标记,因为DNN已经将表单标记写入主题和模块周围的页面。您可以更改jquery逻辑中的最后一行,以引用已由DNN加载的表单。

$("form:first").ajaxForm(options);