2009-08-07 44 views

回答

1

試試這個:

<%= Ajax.ActionLink("f<br />lastname", ...more stuff 
+1

你可能需要包裝這在@ Html.Raw這些天。 – 2013-01-28 19:52:06

0

不能使用<br />因爲ActionLink的方法(實際上我相信所有的HTML和Ajax的擴展方法)編碼字符串。因此,輸出會像

<a href="...">f&lt;br /&gt;lastname</a> 

什麼你可以嘗試,而不是將是一個格式化:

<%= string.Format(Ajax.ActionLink("f{0}lastname", ...more stuff), "<br />") %> 
+0

織補不起作用。這讓我一個 - 「System.Web.HttpCompileException未處理用戶代碼 錯誤CS1010:新行常量」 – Whozumommy 2009-08-07 16:14:57

+0

嗯,試圖使用.Replace而不是string.format?我沒有真正使用ajax擴展,所以我不知道另一種方式來做到這一點。 – Joel 2009-08-07 17:48:32

0

用來爲我工作的\n。但現在它似乎被摧毀了。或者,您可以使用NewLine方法,例如:

string jay = "This is a" + Environment.NewLine + "multiline" + Environment.NewLine + "statement"; 
0

您試過\ r \ n組合嗎?

3

您可能需要恢復到做這樣的事情:

<a href="<%= Url.Action("action") %>">f<br />last</a> 
手動阿賈克斯位

再用線。

0

如何:

<%= Server.UrlDecode(Ajax.ActionLink(Server.UrlEncode("f<br/>lastname"), ...more stuff 
0

這對我的作品 -

<%= HttpUtility.HtmlDecode(Html.ActionLink("AOT &lt;br/> Claim #", "actionName"))%> 
0

我認爲安德魯野兔的答案是正確的。如果您的需求稍微複雜一點,您可以選擇創建自己的AjaxHelper或HtmlHelper。這將涉及創建在AjaxHelper和HtmlHelpers工作自定義擴展方法,通過執行類似:

public static class CustomHtmlHelperExtensions 
{ 
    public static MvcHtmlString FormattedActionLink(this HtmlHelper html, ...) 
    { 
     var tagBuilder = new TagBuilder("a"); 

     // TODO : Implementation here 

     // this syntax might not be exact but you get the jist of it! 
     return MvcHtmlString.Create(tagBuilder.ToString()); 
    } 
} 

您可以使用dotPeek或你最喜歡的.NET反射工具來檢查來與ASP.NET MVC標準的擴展(例如ActionLink)等,以瞭解Microsoft如何實現大多數這些擴展方法。他們有一些相當不錯的寫作模式。在過去,我採用這種方法來簡化以可讀的方式輸出HTML,例如用於Google地圖或Bing地圖集成,用於創建諸如ActionImage的選項,例如@Html.ActionImage(...)或通過啓用語法來集成輸出紡織品格式HTML,例如@Html.Textile("textile formatted string")

如果你在一個單獨的程序集中定義它(和我一樣),然後記住將它包含到你的項目引用中,然後將它添加到項目的Web.config中。

顯然,這種方法對於您的特定目的而言是過分的,因此,我的投票是針對您的特定情況的Andrew Hare的方法。

0

這個問題問了幾年了,但我遇到了麻煩。我找到了答案,是(在MVC):

文本在您的ActionLink:... ActionLink的( 「TextLine1」 + Environment.Newline + 「TextLine2」,...

在ActionLink的,有類指向這一行的CSS:

空白:前;

就這樣我已經看到了答案,他們把整個Actionline在<預> </pre>標記,但造成更多問題比它解決了。

相關問題