我希望在MVC視圖上創建一個按鈕樣式按鈕,但不確定我是否應該使用HTMLHelper來執行此操作。 按鈕顯然需要顯示不同的文本,具體取決於用戶是否已經跟蹤該項目,並在用戶決定關注或取消關注時單擊時調用不同的腳本。動態按鈕.net MVC
幫手是應該完全創建按鈕還是隻是按鈕的內容?
我希望在MVC視圖上創建一個按鈕樣式按鈕,但不確定我是否應該使用HTMLHelper來執行此操作。 按鈕顯然需要顯示不同的文本,具體取決於用戶是否已經跟蹤該項目,並在用戶決定關注或取消關注時單擊時調用不同的腳本。動態按鈕.net MVC
幫手是應該完全創建按鈕還是隻是按鈕的內容?
MVC純粹主義者會爭辯說,關於用戶是否可以關注該項目的決定應在控制器中進行並在模型中傳遞。該布爾值將被傳遞給HTMLHelper。
public static string FollowButton(this HtmlHelper source, bool isFollowing) {
if (isFollowing) {
return "<button>Unfollow</button> //unfollow button
}
else {
return "<button>Follow</button> //follow button
}
}
然後在您的視圖
<%= Html.FollowButton(Model.IsUserFollowing) %>
與以下標準,你的JavaScript應單獨創建。你可以在你的關注按鈕上使用class="follow"
作爲你的JavaScript的一種手段來確定應該使用哪個腳本。
如果幫助程序將永遠用於按鈕文本和其他任何地方,那麼我只需將整個按鈕放在幫助程序中即可簡化您的代碼。