Кендо загружает mvc в ie - нет индикатора выполнения или процента

Я использую MVC с элементами управления Kendo.

{ 
    @(Html.Kendo().Upload()
        .Name("fileuploaddocs")
        .Multiple(true)
        .ShowFileList(true)
        .Events(events => events.Select("fileuploaddocs_onSelect"))
            .Events(events => events.Upload("fileuploaddocs_onUpload"))
            .Events(events => events.Success("fileuploaddocs_onSuccess"))
            .Events(events => events.Error("fileuploaddocs_onError")
            .Async(async => async
                .Save("Save", "Document")
                .Remove("Remove", "Document")
            .AutoUpload(true)
        )
    )

В каждом браузере, кроме IE, есть динамически добавляемый индикатор выполнения и процентный диапазон. Как я могу заставить отображать индикатор выполнения или процентный диапазон в IE? Заранее спасибо!


person tombomcom    schedule 16.12.2014    source источник


Ответы (1)


Вы не указали, какую версию IE вы используете, поэтому я предполагаю, что это может быть 8, 9 или старше.

Индикатор выполнения отсутствует, поскольку Kendo Upload использует HMTL5 File API для отслеживания хода загрузки файла. Вот почему он виден в современных браузерах, таких как Chrome, Firefox, которые используют HTML5. В более старых версиях IE используется резервный метод с загрузкой iframe, который, к сожалению, не поддерживает функцию индикатора выполнения.

Согласно MSDN http://msdn.microsoft.com/en-us/library/ie/hh673542%28v=vs.85%29.aspx Поддержка File API была добавлена ​​в IE 10, поэтому она должна там работать. Но это IE, так что никогда не знаешь :)

Я провел тест на http://demos.telerik.com/aspnet-mvc/upload/async с моим IE8, и индикатор выполнения не работает должным образом.

Итак, подведем итоги. Даже если вы принудительно отобразите индикатор выполнения, он все равно будет изменяться с 0% до 100% за один раз после завершения загрузки и не будет отображать реальный прогресс.

person Zanuff    schedule 16.12.2014