2017-05-03 7 views
0

は以下である私のAJAX要求jQueryのAjaxはasp.netのWebページにFORMDATAを送る(aspx.cs)

function sendData() { 
    var formdata = new FormData(); 
    var fileUpload = $("#txtUploadFile").get(0); 
    var files = fileUpload.files; 
    for (var i = 0; i < files.length; i++) { 
     formdata.append(files[i].name, files[i]); 
     } 
    formdata.append("PaymentDate", new Date()); 
    $.ajax({ 
     url: 'CCA_Form.aspx/SendData', 
     type: 'POST', 
     data: formdata, 
     contentType: false, 
     processData: false, 
     success: function() { 
      alert("Data Added Successfully"); 
     }, 
     error: function() { 
      alert("Error while inserting data"); 
     } 
    }); 
} 

と私のサーバーメソッドは、Ajaxメソッドは常に成功を示すこの

[WebMethod] 
    public static string SendData() 
    {//break point here 
     // code 
     return "return data"; 
    } 

のようなものですメッセージとwebmethodはサーバー側でぶつかることはありません。自分のコードで逃したことを助けてくれますか? ありがとうございます。

答えて

0

C#では

= "True" をEnablePageMethodsであなたのページにのScriptManagerを追加します。

[WebMethod] 
    public static string SendData(DateTime date) 
    {//break point here 
     // code 
     return "return data"; 
    } 

をASPXで

<asp:ScriptManager ID="ScriptManagerMain" 
     runat="server" 
     EnablePageMethods="true" 
     ScriptMode="Release" 
     LoadScriptsBeforeUI="true"> 
    </asp:ScriptManager> 

javascriptの

PageMethods.SendDate(new Date(),function(response){ 
    // success 
}); 

、使用中< ASP:AsyncFileUpload ..ファイルをアップロードするためのasyncly

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="xc" %> 

<form id="form1" runat="server"> 
<asp:ScriptManager ID="ScriptManager1" runat="server"> 
</asp:ScriptManager> 
<xc:AsyncFileUpload OnClientUploadError="uploadError" 
    OnClientUploadComplete="uploadComplete" runat="server" 
    ID="AsyncFileUpload1" Width="400px" UploaderStyle="Modern" 
    OnUploadedComplete = "FileUploadComplete" 
    /> 
<asp:Label id="lblMsg" runat="server" /> 
</form> 

また

protected void FileUploadComplete(object sender, EventArgs e) 
{ 
    string filename = System.IO.Path.GetFileName(AsyncFileUpload1.FileName); 
    AsyncFileUpload1.SaveAs(Server.MapPath("Uploads/") + filename); 
} 

とJS

<script type = "text/javascript"> 
    function uploadComplete(sender)  { 
     $get("<%=lblMsg.ClientID%>").innerHTML = "File Uploaded Successfully"; 
    } 

function uploadError(sender) { 
    $get("<%=lblMsg.ClientID%>").innerHTML = "File upload failed."; 
} 

+0

私はあなたの助けに感謝し、私は唯一の送信ではありませんよ日付だけでも、私もファイルを送信しています。私の更新された質問を見てください。 –

+0

ファイルを非同期にアップロードするために、を使用します。 –

関連する問題