2017-07-15 6 views
0

-Code vor Anweisung während Ajax ist:Getting SyntaxError: fehlt; JQuery Anruf

var rootData = null; 

$.ajax({ 
url: 'http://localhost:12345/request', 
data: rootData, 
type: 'GET', 
crossDomain: true, 
dataType: 'jsonp', 
error: function() { alert('Failed!'); }, 
success: function() { alert('OK'); } 
}); 

ich habe: „Syntaxerror: fehlt, vor Anweisung“ Ich verstehe nicht, warum!

+0

Ich denke Fehler in einem anderen place.post full Funktionscode – prasanth

+0

Das Stück Code sieht gut aus. – lilezek

+0

Es ist wahrscheinlich der zurückgegebene Code, der das Problem hat. Verwenden Sie die Entwicklerkonsole Ihres Browsers, um zu sehen, was von der GET-Anfrage zurückkommt; es ist wahrscheinlich keine richtige JSONP-Antwort. – Pointy

Antwort

0

Dieser Fehler kann auftreten, wenn Sie eine Zeichenfolge nicht ordnungsgemäß umgehen und die JavaScript-Engine das Ende der Zeichenfolge bereits erwartet.

Überprüfen Sie rootData, es könnte diesen Fehler verursachen. (Ich gehe davon aus rootData wird auf null dann mit einigen Daten gefüllt, bevor die Anfrage zu senden)

0

OK ich die Lösung gefunden:

ein übriges Server auf Port 12345 (Tomcat) und einen Spring MVC-Server auf Port 8080 (Tomcat)

die Anfrage von MVC ist

var treeData = null; 
$.ajax({ 
    url: 'http://localhost:12345/request', 
    data: treeData, 
    type: 'GET', 
    async:false, 
    crossDomain: true, 
    dataType: 'json', 
    error: function() { alert('Failed!'); }, 
    success: function(treeData) { .... 

und der Rest-Server die Cross-Domain-Anfrage nur durch Zugabe von @CrossOrigin akzeptieren muss:

Verwandte Themen