2011-06-02 43 views
2

我想在同一行使用多個html助手,但我沒有成功。MVC Razor:如何在同一行中混合使用html助手和文本?

我搜索的結果是:Name:<textbox>(注意 「:」)

@Html.LabelFor(x=>x.Name) ":" @Html.EditorFor(x => x.Name) //doesn't work 

我怎樣才能實現這一目標?

+2

定義'does not work';你會得到一個編譯器異常,或只是不是預期的結果?該代碼看起來非常有效。 – Tejs 2011-06-02 20:44:05

回答

6

使用@:語法。

@using (Html.BeginForm()) 
{ 
    @Html.LabelFor(x=>x.Name) @:: @Html.EditorFor(x => x.Name) 
} 

或者特殊標籤text(此標記不呈現,它允許你把文本代碼之間是這樣)

@using (Html.BeginForm()) 
{ 
    @Html.LabelFor(x=>x.Name) <text>:</text> @Html.EditorFor(x => x.Name) 
} 
2

你不需要繞:

報價

Razor應該在關閉之後停止查找代碼,因此您無需指定它是一個字符串。

@Html.LabelFor(x=>x.Name): @Html.EditorFor(x => x.Name) 
+0

':'被認爲是一段代碼,結果是無效的語法。 – BrunoLM 2011-06-02 20:55:38

+0

@BrunoLM,我只是試了一下,它對我來說工作得很好。 – Brandon 2011-06-02 20:56:36

相關問題