2016-11-06 10 views
-3

Warum funktioniert die erste Funktion und nicht die zweite? Beide Funktionen befinden sich in derselben Skriptanweisung. Wenn ich die zweite Funktion auf meiner Webseite ausführe, kommt sie nicht einmal über die Ajax-Anweisung hinaus, aber ich bin mir nicht sicher, was das eigentliche Problem damit ist, da ich dieselbe Vorlage wie die erste Funktion verwendet habe. Bitte beachten Sie auch, dass ich der Java API sehr neu bin.Ich habe zwei sehr ähnliche Funktionen, aber nur eine funktioniert

function summonerLookUp() { 
SUMMONER_NAME = $("#userName").val(); 

if (SUMMONER_NAME !== "") { 

    $.ajax({ 
     url: 'https://euw.api.pvp.net/api/lol/euw/v1.4/summoner/by-name/' + SUMMONER_NAME + '?api_key=RGAPI-F6099CCD-E674-478D-B9BF-2090B52A116C', 
     type: 'GET', 
     dataType: 'json', 
     data: { 

     }, 
     success: function (json) { 
      SUMMONER_NAME_NOSPACES = SUMMONER_NAME.replace(" ", ""); 

      SUMMONER_NAME_NOSPACES = SUMMONER_NAME_NOSPACES.toLowerCase().trim(); 

      summonerLevel = json[SUMMONER_NAME_NOSPACES].summonerLevel; 
      summonerID = json[SUMMONER_NAME_NOSPACES].id; 


      document.getElementById("sLevel").innerHTML = summonerLevel; 
      document.getElementById("sID").innerHTML = summonerID; 

      sumName = json[SUMMONER_NAME_NOSPACES].name; 
      sumID = json[SUMMONER_NAME_NOSPACES].id 
     }, 
     error: function (XMLHttpRequest, textStatus, errorThrown) { 
      alert("error getting Summoner data!"); 
     } 
    }); 
} else {} 

}

function getMasteryData() { 
SUMMONER_NAME = $("#userName").val(); 
sumID = string(sumID); 


if (SUMMONER_NAME !== "") { 

    $.ajax({ 
     url: 'https://euw.api.pvp.net/championmastery/location/EUW1/player/' + sumID + '/champions?api_key=RGAPI-F6099CCD-E674-478D-B9BF-2090B52A116C', 
     type: 'GET', 
     dataType: 'json', 
     data: { 

     }, 
     success: function (json) { 

      bestchampid = json[0].championId; 
      document.getElementById("bcID").innerHTML = bestchampid; 
     }, 
     error: function (XMLHttpRequest, textStatus, errorThrown) { 
      alert("error getting Summoner data for the ID!"); 
     } 
    }); 
} else {} 

}

Sorry für schlechte Formatierung, aber ich hoffe, dass Sie es verstehen können.

+0

müssen Sie "sumID" in der zweiten Funktion übergeben. Ist das eine globale Variable? –

+4

Öffnen Sie die Webkonsole Ihres Browsers. Beobachten Sie den Fehler dort: 'Uncaught ReferenceError: String ist nicht definiert' In JavaScript gibt es keine eingebaute' String'-Funktion. Es gibt eine 'String'-Funktion, obwohl es unklar ist, warum Sie sie dort haben wollen, aber es hängt davon ab, was' sumID' ist. –

+0

Sie können toString() verwenden, wenn Sie konvertieren möchten –

Antwort

0

Sie sollten diese Zeile aus der zweiten Funktion

sumID = string(sumID);

entfernen, da es keine Standardfunktion namens Zeichenfolge ist. Verwenden Sie stattdessen String().

+0

Wert wird in der ersten Funktion gesetzt @ 'sumID = json [SUMMONER_NAME_NOSPACES] .id' – SeinopSys

+0

@SeinopSys: Lesen Sie die Antwort erneut. void hat nicht gesagt, dass 'sumID' nicht gesetzt wurde. –

+0

Sie haben Recht. Ich wollte darauf hinweisen, dass er wahrscheinlich eine alternative Methode anbieten sollte, um es in eine Zeichenkette umzuwandeln, aber es scheint in der Tat nicht notwendig. – SeinopSys

Verwandte Themen