2017-02-21 80 views
1

我有一個簡單的問題,但從昨天開始我就搞不清楚了。我想在fullcalendar腳本中做一個'if else statement'語句。如果用戶點擊標題爲one的事件,它將顯示modalOne。如果用戶點擊其他事件,它將顯示modalTwo。我嘗試下面的代碼。它不起作用。它爲我點擊的每個事件顯示modalOne。If Else statement in Fullcalendar

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

可能最適合您評估if語句使用三個等號來比較類型和值。 'if(calEvent.title ===「one」){' –

回答

2

您的代碼總是顯示modalOne的原因是由於以下情況。

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

而是嘗試下面的解決方案,也注意我是如何使用嚴格平等而不是雙等同。

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

謝謝!但爲什麼有三重平等而不是兩重? –

+0

,因爲嚴格等於比較變量的類型和內容,如果你不使用嚴格的等式,JavaScript解釋器不會檢查類型,而只是類型的內容,在某些情況下這可能會導致意外的結果。如果解決方案已解決您的問題,請將其標記爲接受的答案,因爲這對我來說意義重大。謝謝。 –

+0

也許包含一些指向[平等比較信息]的鏈接(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness)? – haxxxton