2013-02-21 53 views
0

在jQuery中,我需要有這樣的事情:asp.net的MVC:索引超出jQuery的範圍內異常的

if (@(Model.ListItems.Count) > 0) 
      if ('@(Model.ListItems[0].Date)' != '') 
       ....... 

,當Model.ListItems.Count爲0將無法正常工作,因爲它會引發

索引超出範圍

在異常的下一行。這樣做是有道理的,因爲表達式的評估,但我能做些什麼來按照我的意圖行事?

+0

你有一個調試器。設置合適的中斷點並查看模型在達到該線時的狀態。 – asawyer 2013-02-21 13:43:05

+0

你試圖運行的jQuery代碼是什麼? – Pete 2013-02-21 13:49:39

+1

它在我寫的第二行中斷,實際上它應該中斷,因爲剃鬚刀表達式首先被評估。我的問題是要做什麼,以防止 – 2013-02-21 13:50:31

回答

0

我終於想通了這一點:
代碼變爲:

@if (Model.ListItems.Count > 0) 
{ 
    if (Model.ListItems[0].Date!= null) 
     <text> 
      ...... 
     </text> 
} 
0

你混淆了你的客戶端腳本和JavaScript。

爲什麼你會認爲javascript if分支會影響服務器端代碼剃鬚刀代碼,因爲它會在html響應中替換您的@(...)表達式?

您需要在剃鬚刀本身中執行分支邏輯,以便它執行服務器端。

+0

你是對的...我只是不知道該怎麼做 – 2013-02-21 14:04:13

相關問題