我在我的asp.net mvc 3頁面上有多個動態按鈕。在asp.net mvc 3中處理按鈕點擊的最佳方法是什麼?在asp.net中沒有事件處理,那麼最好的做法是什麼?在asp.net MVC 3中的多個按鈕點擊3
回答
如果按鈕不需要相同的表單數據,那麼您可以使用不同的操作方法創建兩個表單。這是最簡單的解決方案。
如果你需要使用相同的表單數據,那麼有很多方法,包括Darin和tvanfosson的方法。還有一種基於屬性的方法,它將根據點擊哪個按鈕來選擇正確的操作方法。
您可以通過訂閱他們的點擊事件來處理使用JavaScript的按鈕點擊。例如使用jQuery你可以給這些按鈕的類,然後:
$(function() {
$('.someClass').click(function() {
// a button was clicked, this will point to the actual button
});
});
,或者那些提交表單的按鈕,你可以給他們相同的名稱和不同的值,然後在服務器上測試的價值名稱參數。它的值等於點擊的按鈕。
讓我們假設例如您有多個下列形式提交按鈕:
@using (Html.BeginForm())
{
... some input fields
<button type="submit" name="Button" value="delete">Delete data</button>
<button type="submit" name="Button" value="save">Save data</button>
}
現在你張貼到你可以決定哪個按鈕被點擊控制器動作中:
[HttpPost]
public ActionResult Index(MyViewModel model)
{
var button = Request["button"];
if (button == "save")
{
// the save button was clicked
}
else if (button == "delete")
{
// the delete button was clicked
}
...
}
這是很好的方式,但對於狀態管理。我的意思是,如果我在第一個按鈕點擊設置一些值的視圖狀態,我handeling第一個按鈕點擊部分視圖,然後如何獲得視圖數據的價值從第一個按鈕點擊赤入第二等等 –
@RedSwan,以及,您可以在表單內使用輸入字段,將該值發送給控制器。 –
取決於按鈕的功能。如果它們是邏輯上獨立的操作,則可以在服務器端將每個回發分別執行一次單獨的操作。這通常也起作用,它們是同一動作的變體,保存與取消,例如,保存回發表單和取消重定向到您之前的URL(例如,回到編輯細節)。如果這些按鈕表示將發佈回相同操作的不同數據,則可以爲它們提供不同的值。如果按鈕已命名,則值將與表格的其餘部分一起回傳(假設它們已包含在表單中)。如果從AJAX發回,您可能需要顯式序列化按鈕值和表單。保存的
例/取消
@using (Html.BeginForm())
{
//...
<button type="submit" class="submit-button button">Save</button>
@Html.ActionLink("Cancel", "details", new { ID = Model.ID }, new { @class = "cancel-button button" })
}
然後使用CSS,也許連同jQuery用戶界面樣式的按鈕。
<script type="text/javascript">
$(function() {
$('.button').button();
...
});
</script>
- 1. MVC 3按鈕單擊
- 2. ASP.NET MVC按鈕多次點擊
- 3. asp.net中的按鈕點擊事件mvc
- 4. ASP.Net MVC 3個多CheckBoxLists
- 5. 保存按鈕在MVC 3
- 6. 多個「GET」在ASP.NET MVC的形式3
- 7. 按鈕點擊API級別3?
- 8. Boostrap 3:點擊按鈕不起作用
- 9. 添加按鈕,點擊計數器3
- 10. MVC 3中的ASP.NET MVC 4模板3
- 11. Silverlight 3按鈕點擊參數
- 12. 在ASP.NET MVC 3
- 13. 路由在ASP.NET MVC多個參數3
- 14. 在按鈕上點擊多個按鈕
- 15. MVC 3基於點擊按鈕瀏覽各種視圖
- 16. 如何重定向到paypal頁面註冊按鈕點擊使用asp.net mvc 3
- 17. 退出按鈕後點擊後仍然顯示頁面asp.net mvc 3
- 18. asp.net MVC引導按鈕點擊事件?
- 19. 按鈕ASP.NET MVC行動點擊
- 20. MVC 3圖像按鈕
- 21. 在ASP.NET MVC中的ACL 3
- 22. 在asp.net MVC 3中清除Chrome chache 3
- 23. 在ASP.NET MVC 3中使用SquishIt 3
- 24. MVC按鈕點擊動作
- 25. 如何添加一個buttton2,同時點擊另一個按鈕1和按鈕3,同時點擊按鈕2
- 26. 在HTML中使用按鈕作爲鏈接(ASP.Net MVC 3)
- 27. 導航在asp.net mvc上的另一個頁面按鈕點擊
- 28. ASP.net MVC 3多選列表
- 29. ASP.Net MVC 3多次提交
- 30. ASP.NET MVC 3多語言SEO
http://www.dotnetcurry.com/ShowArticle.aspx?ID=724 –