我想在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