【问题标题】:Sending file from JQuery Ajax to C# Webmethod将文件从 JQuery Ajax 发送到 C# Webmethod
【发布时间】:2017-04-11 05:29:24
【问题描述】:

我想使用 jQuery Ajax 将数据从 aspx 页面发送到 .cs Webmethod。我的html代码如下所示

            <tr>
                <td>
                    <input type="text" id="txtName">
                </td>
            </tr>
            <tr>
                <td>
                    <form action="" id="AttachmentForm1" enctype="multipart/form-data">
                        <input type="file" name="UploadFile1" id="txtUploadFile1" class="btn btn-sm" />
                    </form>
                </td>
            </tr>

我的javascript代码如下

 function saveData() {

    var file = $("#txtUploadFile1")[0].files[0];

    $.ajax({
        url: 'CCA_Form.aspx/SaveData',
        type: 'POST',
        dataType: 'json',
        contentType: 'application/json; charset=utf-8',
        data: JSON.stringify({  Name: txtName, fileData: file }),
        success: function () {
            alert("Data Added Successfully");
        },
        error: function () {
            alert("Error while inserting data");
        }
    });}

我的 c# 代码如下

    [WebMethod]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public static bool SaveData(string Name, string[] fileData)
    {
        //Breakpoint
        return true;
    }

如何在 c# 的 Webmethod 中获取上传的文件?

提前致谢。

【问题讨论】:

标签: javascript c# jquery asp.net ajax


【解决方案1】:

您需要使用XMLHttpRequest
这家伙有一个非常好的教程。看看对你有没有帮助:Click Here

或者

对于您的上述代码:

var filename = $("#txtUploadFile1").val();
 $.ajax({
    url: 'CCA_Form.aspx/SaveData',
    type: 'POST',
    enctype: 'multipart/form-data',
    data: {file: filename},
    success: function () {
        alert("Data Added Successfully");
    },
    error: function () {
        alert("Error while inserting data");
    }
});}

【讨论】:

    猜你喜欢
    • 2021-04-14
    • 1970-01-01
    • 1970-01-01
    • 2020-10-12
    • 2011-09-18
    • 1970-01-01
    • 2017-06-20
    • 1970-01-01
    相关资源
    最近更新 更多