ActionLink htmlAttributes
作品
<a href="@Url.Action("edit", "markets", new { id = 1 })" data-rel="dialog" data-transition="pop" data-icon="gear" class="ui-btn-right">Edit</a>
不工作 – 为什么?
@Html.ActionLink("Edit", "edit", "markets", new { id = 1 }, new {@class="ui-btn-right", data-icon="gear"})
看来你不能传递像data-icon =“齿轮”到htmlAttributes?
build议?
问题是你的匿名对象属性data-icon
有一个无效的名字。 C#属性的名称中不能有破折号。 有两种方法可以解决这个问题:
使用下划线而不是短划线(MVC会自动用发射的HTML中的短划线replace下划线):
@Html.ActionLink("Edit", "edit", "markets", new { id = 1 }, new {@class="ui-btn-right", data_icon="gear"})
使用字典中的重载:
@Html.ActionLink("Edit", "edit", "markets", new { id = 1 }, new Dictionary<string, object> { { "class", "ui-btn-right" }, { "data-icon", "gear" } });
用下划线replace所需的连字符; 它会自动呈现为连字符:
@Html.ActionLink("Edit", "edit", "markets", new { id = 1 }, new {@class="ui-btn-right", data_icon="gear"})
变为:
<form action="markets/Edit/1" class="ui-btn-right" data-icon="gear" .../>
@Html.ActionLink("display name", "action", "Contorller" new { id = 1 },Html Attribute=new {Attribute1="value"})