1. 程式人生 > 其它 >.Net Core MVC Razor輸出字串方法(javascript中嵌入razor)

.Net Core MVC Razor輸出字串方法(javascript中嵌入razor)

有時我們需要在javascript 中使用Razor輸出字串,由於javascript 中可能含有類似於this的關鍵字,會被識別為 後端關鍵字,這樣我們就需要加上text標籤進行處理

因為 在 @if 的程式碼塊裡,已經從內容模式變為編譯模式,編譯器會預設 {} 裡的程式碼全是 razor

通過使用<text>這個偽元素來強制Razor從編譯模式返回到內容模式:

<script type="text/javascript">

 @{var contents = smodel != null ? Html.Raw(JsonConvert.SerializeObject(new { name = smodel.Name, key = smodel.Key })) : null; }
            @if (smodel != null)
            { 
           <text>
            this.form = @contents;
            </text>
            }
</script>

  

       @:表示後面直接輸出字串

          <text></text>表示裡面輸出的是字串

          兩種方式可以任選一種,注意<text>不是html標籤,它是razor語法中專門用來輸出字串的