Код загрузки файла работает в Chrome и Mozilla, но не в т.е 8,9

0

Вот код на стороне сервера С#

 protected void btnUpload_Click1(object sender, EventArgs e)
    {
        HttpPostedFile file = Request.Files["btnFileUpload"];
        if (file != null && file.ContentLength > 0)
        {
            string fname = Path.GetFileName(file.FileName);
            file.SaveAs(Server.MapPath(Path.Combine("~/App_Data/", fname)));
        }
    }

Этот код хорошо работает в Chrome и Mozilla, но в 8,9 Request.Files["btnFileUpload"] получает значение null.

Вот html...

 <form id="form1" runat="server" enctype="multipart/form-data">
<div class="fileName">
</div>
<div id="plus" class="uploadPlusBtn">
</div>
<input type="file" id="btnFileUpload" runat="server" />
<asp:Button ID="btnUpload" runat="server" OnClick="btnUpload_Click1" Text="Upload" />
</form>

И добавленный jQuery

  $(function () {
    var wrapper = $('<div/>').css({ height: 0, width: 0, 'overflow': 'hidden' });
    var fileInput = $('#btnFileUpload').wrap(wrapper);

    $('#plus').click(function () {
        fileInput.click();
    });
});
Теги:
file-upload

2 ответа

0

Если вы не можете решить эту проблему, попробуйте использовать http://www.uploadify.com/

0

У меня IE 8, и ваш код работает отлично для меня, Request.Files ["btnFileUpload"] возвращает HttpPostedFile. Вот код.aspx:

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script>
        $(function () {
            var wrapper = $('<div/>').css({ height: 0, width: 0, 'overflow': 'hidden' });
            var fileInput = $('#btnFileUpload').wrap(wrapper);

            $('#plus').click(function () {
                fileInput.click();
            });
        });
    </script>
</head>
<body>
    <form id="form1" runat="server" enctype="multipart/form-data">
    <div class="fileName">
    </div>
    <div id="plus" class="uploadPlusBtn">
    </div>
    <input type="file" id="btnFileUpload" runat="server" />
    <asp:Button ID="btnUpload" runat="server" OnClick="btnUpload_Click1" Text="Upload" />
    </form>
</body>
</html>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню