2016-05-25 9 views
1

Ich habe eine Datei-Eingang und ich möchte ausgewählte Datei mit Jquery Ajax hochladen.Klassische Asp-Persits Upload und Jquery Ajax

Meine Eingang wie dieses

<form id="formWithFiles">  
    <input type="file" name="file"> 
</form> 

Mein Upload jquery Code

$("input[name='file']").on('change',function(){ 
    $.ajax({ 
    url: 'du.asp', 
    type: 'POST', 
    contentType:'multipart/form-data', 
    data: new FormData($('#formWithFiles')[0]), 
    processData: false, 
    success:function(data){ 
     console.log(data); 
    } 
    }); 
}); 

Mein Hochladen klassischen ASP-Code - du.asp

Set Upload = Server.CreateObject("Persits.Upload") 
Upload.CodePage = 65001 
Upload.OverwriteFiles = False 
Temp = Server.MapPath("content/temp")&"/" 
Upload.Save(Temp) 

Problem ist hier; Ich bin ein

Fehler mit jquery ajax

500 Internal Server Error bekommen. Aber wenn ich Formular senden Methode verwenden, dann Datei hochladen mit du.asp.

Detaillierte Fehler (nur mit Ajax)

Boundary nicht in Content-Type gefunden. Stellen Sie sicher, dass Sie in Ihrem Formular das Attribut ENCTYPE = "multipart/form-data" eingefügt haben.

+0

Vorschläge von was ?, haben Sie nicht das Problem angegeben .... tut es Fehler, ist der Fehler beschreibend? Erster Vorschlag geht hier und lernen [fragen] – Lankymart

+0

@Lankymart Entschuldigung mein Schlechter. Ich habe meine Frage bearbeitet. –

+0

Noch nicht sehr klar, möglicherweise müssen Sie detaillierte Fehler in IIS aktivieren. Siehe [Detaillierte 500 Fehlernachricht, ASP + IIS 7.5] (http://stackoverflow.com/a/2765795/692942). – Lankymart

Antwort

2

Ich habe es mit diesem Code gemacht;

var formData = new FormData($("#formWithFiles")[0]); 

    $.ajax({ 
     url: 'du.asp', 
     type: 'POST', 
     data: formData, 
     async: false, 
     cache: false, 
     contentType: false, 
     processData: false, 
     success: function (returndata) { 
      console.log(returndata); 
     } 
    }); 
+0

Es wurde [ausführlich vorher] (http://stackoverflow.com/q/12831680/692942) - froh, dass Sie die Lösung gefunden haben. – Lankymart

+0

Auch [Senden von mehrteiligen/formdata mit jQuery.ajax] (http://stackoverflow.com/a/5976031/692942) für eine weitere detaillierte Aufschlüsselung. – Lankymart