Как получить Html.ActionLink в последней версии (RC1) ASP.NET MVC для отображения в виде кнопки или изображения вместо ссылки?
asp.net-mvc
actionlink
Райан Ланди
источник
источник
AjaxHelper
сActionButton
) Я думал , что я разделю ее ниже.Ответы:
Поздний ответ, но вы можете просто сохранить его и применить класс CSS к объекту htmlAttributes.
а затем создать класс в таблице стилей
источник
Мне нравится использовать Url.Action () и Url.Content () следующим образом:
Строго говоря, Url.Content необходим только для маршрутизации и не является частью ответа на ваш вопрос.
Спасибо @BrianLegg за указание на то, что для этого следует использовать новый синтаксис Razor. Пример был обновлен соответственно.
источник
Заимствуя ответ Патрика, я обнаружил, что должен был сделать это:
чтобы избежать вызова метода post формы.
источник
Назовите меня упрощенно, но я просто делаю:
И вы просто позаботитесь о выделении гиперссылки. Наши пользователи любят это :)
источник
text-decoration:none
избавиться от этой глупой подчеркивания. Это необходимо для некоторых браузеров (Firefox 11.0 наверняка).Использование начальной загрузки - это самый короткий и чистый подход для создания ссылки на действие контроллера, которое отображается в виде динамической кнопки:
Или использовать помощники HTML:
источник
Просто:
источник
onclick
содержанияlocation.href
(такonclick="location.href='@Url.Action(....)'"
) я не мог заставить его работать.Поздний ответ, но именно так я превращаю свой ActionLink в кнопку. Мы используем Bootstrap в нашем проекте, так как это делает его удобным. Не берите в голову @T, так как мы используем только его переводчик.
Выше приведена ссылка, подобная этой, и она выглядит как на картинке ниже:
На мой взгляд:
Надеюсь, это кому-нибудь поможет
источник
new { @class="btn btn-primary" })
+ oneесли вы не хотите использовать ссылку, используйте кнопку. Вы также можете добавить изображение к кнопке:
type = "button" выполняет ваше действие вместо отправки формы.
источник
Вы не можете сделать это с
Html.ActionLink
. Вы должны использоватьUrl.RouteUrl
и использовать URL для создания элемента, который вы хотите.источник
<button onclick="location.href='@Url.Action("NewCustomer", "Customers")'">Checkout >></button>
источник
Простой способ превратить ваш Html.ActionLink в кнопку (если у вас подключен BootStrap - что у вас, вероятно, есть):
источник
Еще более поздний ответ, но я просто столкнулся с подобной проблемой и закончил тем, что написал свое собственное расширение Image link HtmlHelper .
Вы можете найти реализацию этого в моем блоге по ссылке выше.
Просто добавьте, если кто-то ищет реализацию.
источник
Чтобы отобразить значок со ссылкой
источник
Делайте то, что говорит Mehrdad - или используйте помощника url из
HtmlHelper
метода расширения, как описано здесь Стивеном Вальтером. и создайте свой собственный метод расширения, который можно использовать для отображения всех ваших ссылок.Тогда все ссылки будут легко отображаться в виде кнопок / якорей или в зависимости от того, что вы предпочитаете, и, что наиболее важно, вы можете передумать позже, когда обнаружите, что на самом деле предпочитаете какой-то другой способ создания ссылок.
источник
Вы можете создать свой собственный метод расширения
взглянуть на мою реализацию
затем используйте его на ваш взгляд, посмотрите на мой звонок
источник
Для Material Design Lite и MVC:
источник
источник
Кажется, есть много решений о том, как создать ссылку, которая отображается как изображение, но ни одно из них не делает ее похожей на кнопку.
Есть только хороший способ сделать это. Это немного хакерски, но это работает.
Что вам нужно сделать, это создать кнопку и отдельную ссылку действия. Сделайте ссылку действия невидимой, используя css. Когда вы нажимаете на кнопку, она может инициировать событие щелчка ссылки действия.
Это может быть неприятно делать это каждый раз, когда вы добавляете ссылку, которая должна выглядеть как кнопка, но при этом она достигает желаемого результата.
источник
использовать FORMACTION
источник
Просто нашел это расширение, чтобы сделать это - просто и эффективно.
источник
То, как я это сделал, - это разделили actionLink и изображение. Установите изображение actionlink как скрытое, а затем добавьте вызов триггера jQuery. Это скорее обходной путь.
Пример триггера:
источник
Url.Action()
даст вам голый URL для большинства перегрузокHtml.ActionLink
, но я думаю, чтоURL-from-lambda
функциональность доступна толькоHtml.ActionLink
до сих пор. Надеюсь,Url.Action
в какой-то момент они добавят подобную перегрузку .источник
Вот как я это сделал без сценариев:
То же самое, но с диалогом параметров и подтверждения:
источник