Erstellen Sie einen ActionLink mit HTML-Elementen im Linktext
In einem ASP.NET MVC-Ansicht ich möchte einen link in der form:
<a href="blah">Link text <span>with further descriptive text</span></a>
Versuchen, gehören die <span>
element in der linkText
- Feld in einem Aufruf an Html.ActionLink()
endet mit dem es codiert ist (wie zu erwarten wäre).
Gibt es irgendwelche empfohlenen Wege, dies zu erreichen?
InformationsquelleAutor der Frage Giraffe | 2008-12-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie Url.Aktion zum erstellen der link für Sie:
oder Html verwenden.BuildUrlFromExpression:
InformationsquelleAutor der Antwort Casper
wenn Sie wie mit Razor, sollte dies funktionieren:
InformationsquelleAutor der Antwort dplante
Andere Möglichkeit ist, daß Ihre Aktion link zu einem MvcHtmlString wie normal mit entweder HTML.ActionLink, oder Ajax.ActionLink (je nach Kontext), dann schreiben Sie eine Klasse, die den gerenderten MvcHtmlString und hacks Ihren html-text-link direkt in die bereits erbrachten MvcHtmlString, und gibt anderen MvcHtmlString.
So, dies ist die Klasse, die das tut: [bitte beachten Sie, dass das einsetzen/substitution code ist SEHR einfach, und Sie müssen, um es Rindfleisch bis zu Griff mehr verschachtelte html]
Und dann würde es auch in der Ansicht wie diese:
Dieser Ansatz hat den Vorteil, dass Sie nicht mit zu vervielfältigen/zu verstehen, die tag-rendering-Prozess.
InformationsquelleAutor der Antwort david.barkhuizen