jquery - 使用 jquery 和 handler(ashx) 上传文件

标签 jquery file-upload upload handler

我正在尝试使用 jquery ajax 和处理程序 (c#) 上传文件。问题是,当我调用处理程序时,我得到

context.Request.File.Count=0

这是aspx代码:

<!--aspx file code-->
<script language="javascript" type="text/javascript">
$().ready(function () 
{
    $('#save').click(function (e)
    {
        CalluploaderHandler();
    });
});

function CalluploaderHandler()
{
    $.ajax({
                type: "POST",
                url: "Services/UPloader.ashx",
                contentType: "application/json; charset=utf-8",
                success: OnComplete,
                error: OnFail
            });
    return false;
}

function OnComplete(result)
{
    alert('Success');
}

function OnFail(result)
{
    alert('Request failed');
}

</script>
    </head>
        <body>
            <form  enctype="multipart/form-data">
                <label for="file">
                Filename:</label>
                <input name="file" id="file" type="file">
                <input id="save" name="submit" value="Submit" type="submit">
            </form>
        </body>
    </html>    

C# 代码处理程序:

/* handler*/
public void ProcessRequest(HttpContext context)
{
    string savedFileName = "";

    foreach (string file in context.Request.Files)
    {
        HttpPostedFile hpf = context.Request.Files[file] as HttpPostedFile;
        if (hpf.ContentLength == 0)
            continue;
        // savedFileName = context.Server.MapPath(Path.GetFileName(hpf.FileName));
        // hpf.SaveAs(savedFileName);
    }
    context.Response.Write(savedFileName);
}

最佳答案

我认为问题出在contentType尝试

contentType: 'multipart/form-data',

或者

contentType :'application/octet-stream';

查看这篇文章了解更多信息

Sending multipart/formdata with jQuery.ajax

关于jquery - 使用 jquery 和 handler(ashx) 上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8466941/

相关文章:

php - 检测何时在 Woocommerce 中单击 "remove"优惠券按钮

javascript - 无法在jqGrid中添加按钮点击事件

javascript - 为什么 $(window).width() 会大于 CSS max-width?

javascript - 将点击事件添加到动态添加的按钮到剑道窗口内容

javascript - 如何在上传前使用 JavaScript 检查文件 MIME 类型?

javascript - jQuery Ajax 文件上传

python - Django:如何将用户提交的文件直接上传到另一台服务器?

java - 限制htmlunit中的带宽

java - struts2不能检测文件内容? (重命名扩展麻烦)

C# Azure上传文件错误指定的blob或 block 内容无效