2016-11-19 82 views
0

我想基於TempData的,我從控制器傳遞到運行JavaScript。剃刀CSHTML的JavaScript無法到達

但是,使用下面剃刀的代碼,它尼夫達到第二if語句。我有一種感覺,我沒有使用適當的剃刀語法。

@if (TempData["status"] != null) 
{ 
    <script type="text/javascript"> 
     var status = "@TempData["status"]"; 
     if (status == "customerAdded") { 
      swal("1!", "good", "success")    
     } 
     else { 

     }    
    </script> 
} 
+0

你得到任何控制檯錯誤?請先檢查您的控制檯日誌。那麼如果你沒有得到任何錯誤,那麼簡單地把警報放在你的腳本標記中,並檢查它是否彈出或不彈出? –

+0

@superted你試過我的答案嗎? –

回答

0

可以TempData的轉換爲字符串或其他檢查數據值,也可以使用console.log("-");你的JavaScript中,檢查你的代碼運行或不能在你的C#的數據

0

您需要使用Json.Encode@Html.Raw到使其與您的腳本兼容。

@if (TempData["status"] != null) 
{ 
    <script type="text/javascript"> 
     var status = '@Html.Raw(Json.Encode(TempData["status"]))'; // this is the change 
     if (status == "customerAdded") { 
      swal("1!", "good", "success")    
     } 
     else {    
     } 

    </script> 
}