将文件从JQuery Ajax发送到C#Webmethod

时间:2017-04-11 05:29:24

标签: javascript c# jquery asp.net ajax

我想使用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上传文件?

提前致谢。

1 个答案:

答案 0 :(得分:-1)

您需要使用IFERROR((NEW-OLD)/OLD,100%)
这家伙有一个非常好的教程。看它是否对你有所帮助:Click Here

或者

对于您的上述代码:

XMLHttpRequest