ASP MVC3 insert html tag inside actionlink
Asked Answered
H

2

8

I'm new to the ASP MVC3 and I'm using Razor Engine.

My broplem is that I've build my main navigation in form

<nav> <ul> <li><a href=""><b>Link</b></a></li></ul></nav>

So how I can do this with the actionlink? I just need to insert b tag inside a tag.

Hairline answered 15/3, 2012 at 11:35 Comment(0)
L
9

Use @Url.Action() to get href value instead of @Html.ActionLink

Leucopoiesis answered 15/3, 2012 at 11:42 Comment(0)
A
16

Replace this:

<a href=""><b>Link</b></a>

With

@Html.ActionLink("<b>Link</b>", "Action", "Controller")

That may auto encode the <b></b>, so you can try:

@Html.ActionLink(new MvcHtmlString("<b>Link</b>").ToHtmlString(), "Action", "Controller")

Even more simply put, you can use @Url.Action("Action", "Controller"), in the link like:

<a href='@(Url.Action("Action", "Controller"))'><b>Link</b></a>
Ashur answered 15/3, 2012 at 11:47 Comment(3)
One more think on this.... if you tried the above suggestion but you're still seeing the issue it may be because you tried the 3rd suggestion and used Html.Action() as opposed to Url.ACtion() ;)Heloise
Are you sure the above code is working?? its not working for me.Curriery
You got my +1 for the last option. First option got the HTML encoded (as you stated) and the second one does not even compile.Hoch
L
9

Use @Url.Action() to get href value instead of @Html.ActionLink

Leucopoiesis answered 15/3, 2012 at 11:42 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.