2017-02-21 5 views
1

Ich habe eine einfache Frage.Aber ich kann es seit gestern nicht herausfinden. Ich möchte eine 'if else statement'-Anweisung im Vollkalenderscript machen. Wenn der Benutzer auf ein Ereignis mit dem Titel one klickt, wird modalOne angezeigt. Wenn der Benutzer auf andere Ereignisse klickt, wird modalTwo angezeigt. Ich versuche den folgenden Code. Es funktioniert nicht. Es zeigt modalOne für jedes Ereignis, auf das ich geklickt habe.Wenn Else-Anweisung in Fullcalendar

eventClick: function (calEvent, jsEvent, view) { 
      $("#title").val(calEvent.title);    
      if (calEvent.title = "one") { 
       $('#modalOne').modal('show'); 
      } 
      else { 
       $('#modalTwo').modal('show'); 
      } 
     }, 
+1

Wahrscheinlich am besten für Sie die If-Anweisung mit drei Gleichheitszeichen zu bewerten, um den Typ sowie den Wert zu vergleichen. 'if (calEvent.title ===" eins ") {' –

Antwort

2

Der Grund, warum Ihr Code immer modalOne anzeigt, ist wegen des folgenden Szenarios.

if (calEvent.title = "one") { // you're assigning title to "one" not checking 
    $('#modalOne').modal('show'); 
} 

eher versuchen, die Lösung unten, auch feststellen, wie ich strikte Gleichheit verwendet haben, anstatt Doppel Gleichheit.

eventClick: function (calEvent, jsEvent, view) { 
      $("#title").val(calEvent.title);    
      if (calEvent.title === "one") { 
       $('#modalOne').modal('show'); 
      } 
      else { 
       $('#modalTwo').modal('show'); 
      } 
     }, 
+0

Danke! aber warum gibt es dreifache gleich und nicht zwei? –

+0

weil strenge Gleichheit sowohl die Typen als auch den Inhalt der Variablen vergleicht, wenn Sie keine strikte Gleichheit verwenden, überprüft der JavaScript-Interpreter nicht die Typen, sondern nur den Inhalt der Typen, was in bestimmten Szenarien zu unerwarteten Ergebnissen führen kann. Auch wenn die Lösung Ihr Problem gelöst hat, markieren Sie es bitte als akzeptierte Antwort, denn das würde mir sehr viel bedeuten. Vielen Dank. –

+0

Vielleicht einige Links zu [Informationen über Gleichheitsvergleiche] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness)? – haxxxton