2016-09-21 2 views
1

В следующем коде я хотел бы включить глифаки Bootstrap после «Animal Name».Как использовать глистами Bootstrap с методом @ Ajax.ActionLink()?

@Ajax.ActionLink("Animal Name", "_Index", new { sortOrder = ViewBag.NameSortParam, searchString = Request["searchString"] }, new AjaxOptions 
      { 
       HttpMethod = "GET", 
       UpdateTargetId = "PartialTable", 
       InsertionMode = InsertionMode.Replace 
      }) 

Возможно ли это? Если это невозможно, есть ли другие альтернативные решения, как:

<a href="@Url.Action("Index", "Animal", new {sortOrder = ViewBag.NameSortParam, searchString = Request["searchString"] })"> 
      <span style="font-size:18px">Animal Name</span> 
      <i class="glyphicon glyphicon-triangle-bottom"></i> 
</a> 

который используется в качестве альтернативного способа использования Bootstrap Glyphicons с @ Html.ActionLink() метод!

+0

Нет, его не представляется возможным с помощью 'ActionLink()'. Альтернативой является буксир, которым вы владеете методом расширения. –

+0

Спасибо! Использует ли метод $ .ajax()? – TanvirArjel

+0

Нет. Вам нужно написать собственный метод расширения HtmlHelper для генерации html, который вы хотите –

ответ

0
@Ajax.RawActionLink(string.Format("<i class='icon'></i>Click Me"), "ActionResultName", null, new { item.Variable}, new AjaxOptions { HttpMethod = "Post", InsertionMode = InsertionMode.Replace, UpdateTargetId = "taget-div", LoadingElementId = "target-div" }, new { @class = "class" }) 

Метод Helper

public static MvcHtmlString RawActionLink(this AjaxHelper ajaxHelper, string linkText, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes) 
    { 
     var repID = Guid.NewGuid().ToString(); 
     var lnk = ajaxHelper.ActionLink(repID, actionName, controllerName, routeValues, ajaxOptions, htmlAttributes); 
     return MvcHtmlString.Create(lnk.ToString().Replace(repID, linkText)); 
    } 

Источник: https://stackoverflow.com/a/16983575/5326667

0

Вот что я придумал:

В ваших Ajax.ActionLink добавить htmlAttributes атрибут со значением класса и использования javascript/jquery, чтобы изменить значение.

HTML пример атрибута:

new { @class = "expand" } 

Сценарий:

<script> 
    $(document).ready 
    (
     function() 
     { 
      $('.expand').html("<span class='glyphicon glyphicon-chevron-right'></span>") 
     } 
    ) 
</script> 
Смежные вопросы