2017-12-01 4 views
4

Ich versuche herauszufinden, was Adobe Coldfusion ist und wie man auf dieser Plattform arbeitet.ColdFusion 2016 Ajax

Ich bin bei einem einfachen Problem fest.

Beim Abschicken sende ich Formular mit jQuery Ajax an den Server. Aber ich bekam Antwort: 500 (Element MY_VAR ist undefined in FORM.)

Was mache ich falsch?

JS

$loginForm.on('submit', function(e) { 
    e.preventDefault(); 
    var formData = new FormData(e.target); 
    $.ajax({ 
     url: 'test.cfm', 
     method: 'POST', 
     cache: false, 
     processData: false, 
     data: formData, 
     error: function(err) { 
      console.log(err); 
     }, 
     success: function(data, status) { 
      console.log(status); 
      console.log(data); 
     } 
    }); 
}); 

CF

<cfoutput> 
    <p>#form.myvar#</p> 
</cfoutput> 
+0

Was Sie möglicherweise falsch machen, ist es, einfache Dinge schwierig zu machen, indem Sie Javascript anstelle von einem einfachen Formular Post verwenden. –

+0

Haben Sie ein Formularelement mit dem Namen "my_var"? – Leeish

+0

@Leeish Ich hatte es. Ich löste das Problem mit dem Hinzufügen von contentype: falsche Eigenschaft für $ .ajax Wenn ich CFDUMP als T.Stroinski im Kommentar unten beraten, zeigte es, dass AJAX-Methode von JQuery falschen Inhaltstyp meiner Anfrage festgelegt. Also habe ich gerade contentype hinzugefügt: false property für $ .ajax request options object. –

Antwort

4

500 zeigt einen internen Server-Fehler.

Versuchen Sie, Ihre Formularwerte nach dem Senden anzuzeigen?

Vielleicht versuchen Sie und verwenden Sie die cfdump-Tag. Sehr nützlich zum Debuggen.

Versuchen Sie, den Formularbereich auszugeben, und sehen Sie, welche Variablen tatsächlich darin enthalten sind.

+3

Danke für die Antwort. Ich habe dieses Problem mit dem Hinzufügen von contentype gelöst: false-Eigenschaft für $ .ajax –

Verwandte Themen