我想在ASP.NET MVC 3中构建自定义控件。我想创建一个按钮,我可以传递不同的参数,如CSS类名字等。不过,我希望能够跟踪其上的事件,如onClick或onHover ...如何在ASP.NET MVC 3 System.Web.UI.WebControls.Button
我该怎么办?请我坚持这一点。
谢谢。
我想在ASP.NET MVC 3中构建自定义控件。我想创建一个按钮,我可以传递不同的参数,如CSS类名字等。不过,我希望能够跟踪其上的事件,如onClick或onHover ...如何在ASP.NET MVC 3 System.Web.UI.WebControls.Button
我该怎么办?请我坚持这一点。
谢谢。
您可以创建类似的HtmlHelper:使用JQuery
@Html.Button("CustomButton", "http://localhost")
的JS:
$(function() {
$(".custom-button").click(function() {
// This will handle all the click events of the buttons
});
$("#CustomButton").click(function() {
// This will handle the click event on the specific button
});
});
正如达林说,有没有更多的用户
public static class Helpers {
public static MvcHtmlString Button(this HtmlHelper html, string id, string url) {
var builder = new TagBuilder("a");
builder.MergeAttribute("href", url);
builder.MergeAttribute("id", id);
builder.AddCssClass("custom-button");
return MvcHtmlString.Create(builder.ToString(TagRenderMode.Normal));
}
}
在视图控件就像我们在asp.net webforms中一样,根据我的说法,这是一件非常好的事情。
所以上面的代码是一种构建“用户控件”的方法。
ASP.NET MVC中不存在服务器端控件和事件。如果你想跟踪事件,如oncilck
和onhover
你可以使用JavaScript。你也可以使用HTML助手。只需在ASP.NET MVC应用程序中忘记System.Web.UI
命名空间。
太棒了!非常感谢 – kbaccouche 2012-03-02 13:47:36