2013-11-14 4 views
0

У меня возникли проблемы с дизайном моей AjaxAction Ссылки, чтобы соответствовать спецификации дизайна.Ajax Action Link Styling

ссылка HTML выглядит следующим образом:

<a href="#" class="button"><span class="icon-search"></span>&nbsp;Search</a> 

Обратите внимание на срок в пределах связь, это с помощью веб-шрифтов для создания иконок.

Моя ссылка действия на данный момент выглядит следующим образом:

@Ajax.ActionLink("Search", "results", null, new AjaxOptions { UpdateTargetId = "placeholder", InsertionMode = InsertionMode.Replace, HttpMethod = "GET" }, new { @class = "button", }) 

Я новичок в C#/ASP.Net/MVC, и я застрял о том, как я могу добиться этого.

Кто-нибудь знает, способ ли это сделать?

+0

Я вижу класс по вашей ссылке и на вашем пролете. В чем проблема? Не можете ли вы просто использовать эти классы в качестве селекторов в CSS и стиле, как вы хотите? –

+0

Im'm не может включить пролет в ссылку действия ..... – Mark

ответ

0

Вы можете использовать метод расширения для настройки @ Ajax.ActionLink. Например: ImageAjaxLink

public static IHtmlString ImageActionLink(this AjaxHelper helper, string imageUrl, string titleText, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes) 
    { 
     var builder = new TagBuilder("img"); 
     builder.MergeAttribute("src", imageUrl); 
     builder.MergeAttribute("title", titleText); 
     var link = helper.ActionLink("[replaceme]", actionName, controllerName, routeValues, ajaxOptions, htmlAttributes).ToHtmlString(); 
     return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString(TagRenderMode.SelfClosing))); 
    } 

применять SO-

@Ajax.ImageActionLink("image.png","Link",...)