我想在MVC3中使用幫助器來提交按鈕。有這樣的事情嗎?如果沒有,那麼是否有人知道我可以在哪裏獲得一些代碼。我想要一個可以傳遞類屬性的類。尋找一個Html.SubmitButton幫手,可以接受MVC3中的類屬性
回答
CHK此鏈接了它會告訴你如何創建自定義的helper方法,並沒有內置提交幫手......
http://stephenwalther.com/blog/archive/2009/03/03/chapter-6-understanding-html-helpers.aspx
,它也包括一個非常基本的提交helper方法,希望它幫助
是不是很簡單只是寫
<input type="submit" class="myclassname"/>
在MVC ,沒有像控件這樣的東西,它們帶有許多應用程序邏輯。事實上,這是可能的,但不推薦。我想說的是,Html助手只是使Html寫作更舒適,並幫助你不寫重複的代碼。在你的特定情況下,我認爲編寫直接html比使用helper更簡單。但無論如何,如果你想,它包含在MVC Futures Library。方法被稱爲SubmitButton
沒有一個,但不應該阻止你自己建立一個。
儘管MVC期貨項目似乎根本沒有前進或支持,但下載源代碼並抓取提交按鈕助手(以及它的支持代碼)來推出自己的代碼並不難。
這正是我們爲大型MVC 4項目創建SubmitButton幫助器的基礎。
按鈕沒有HTML幫助程序,因爲HTML幫助程序會反映模型的propertys並通過爲綁定目的設置正確的屬性來幫助您,它們還會查看該屬性的VilidationAttribute元數據(如果有)以及添加任何jQuery驗證屬性。
按鈕不是模型的一部分,所以沒有任何助手。
你可以箱子按照本文http://www.asp.net/mvc/overview/older-versions-1/views/creating-custom-html-helpers-cs或使用TagBuilder類自己的HTML幫助:http://www.asp.net/mvc/overview/older-versions-1/views/using-the-tagbuilder-class-to-build-html-helpers-cs但我更願意返回HTMLString不是字符串
只需添加到您的項目類這樣的代碼:
using System.Text;
namespace System.Web.Mvc
{
public static class CustomHtmlHelper
{
public static MvcHtmlString SubmitButton(this HtmlHelper helper, string buttonText, object htmlAttributes = null)
{
StringBuilder html = new StringBuilder();
html.AppendFormat("<input type = 'submit' value = '{0}' ", buttonText);
//{ class = btn btn-default, id = create-button }
var attributes = helper.AttributeEncode(htmlAttributes);
if (!string.IsNullOrEmpty(attributes))
{
attributes = attributes.Trim('{', '}');
var attrValuePairs = attributes.Split(',');
foreach (var attrValuePair in attrValuePairs)
{
var equalIndex = attrValuePair.IndexOf('=');
var attrValue = attrValuePair.Split('=');
html.AppendFormat("{0}='{1}' ", attrValuePair.Substring(0, equalIndex).Trim(), attrValuePair.Substring(equalIndex + 1).Trim());
}
}
html.Append("/>");
return new MvcHtmlString(html.ToString());
}
}
}
和使用例如:
@Html.SubmitButton("Save", new { @class= "btn btn-default", id="create-button" })
應該是被接受的答案 – SlapY 2017-03-14 12:26:51
這裏是我做到了。
談到HTML 5 <button>
屬性的
創建PartialView - 這樣稱呼它_HTML5Button。vbhtml
@ModelType YourProjectName.ButtonViewModel
<button onclick="location.href = '@Model.URL'" class="btn btn-info">@Model.ButtonText</button>
,並創建一個ButtonViewModel
Public Class ButtonViewModel
Public URL As String
Public ButtonText As String = "Modify Button Text"
'You can add more parameters or do as you please
End Class
然後,你需要創建,如果你想在以後添加更多的參數,它叫你偏喜歡這個
@Html.Partial("~/Views/Shared/MiniPartialViews/_HTML5Button.vbhtml", New ButtonViewModel With {.URL = "http://www.goanywhere.com", .ButtonText = "Name That Will Appear On The Button"})
這樣 - 它都是在那個集中爲你的一個局部視圖 - 可以說你想稍後添加一個ID
好吧,你去部分,添加一個id =「@ Model.Id」,然後在你的PartialView調用中,你只需添加該參數 - 它不會破壞任何東西 - 如果你需要添加一個類到該按鈕 - 添加它 - 在一個地方而不是搜索所有的電話。
希望有幫助 - 它對我來說超級好!
- 1. UIHint屬性可以接受當前類的屬性嗎?
- 2. 尋找替代靜態幫手類
- 3. 不可接受的屬性值屬性
- 4. 我可以用MVC3幫手創建一個選擇列表
- 5. 可以接受屬性驗證嗎?
- 6. 我可以在輸入接受屬性
- 7. PFUbiquityRecordsImporter - 屬性的值不可接受的類型:屬性
- 8. MVC3一個屬性
- 9. 蟒蛇xml.etree - 如何尋找一個以上的屬性
- 10. 擴展MVC3的HTML幫手包括自定義的HTML5屬性
- 11. 屬性值不可接受的類型,但類型是好的
- 12. 尋找密碼幫助的新手
- 13. 在HTML中有多餘的語言屬性可以接受嗎?
- 14. MVC3查找列表html幫手
- 15. 尋找最大屬性XPath 1.0中受到附加約束
- 16. 可以設計sign_in()測試助手接受一個new_record嗎?
- 17. 接受任何屬性的類
- 18. 我正在尋找一個svn幫手程序
- 19. 尋找觸手可及
- 20. 編寫一個可以接受RuntimeException的子類的scala方法
- 21. 我在哪裏可以找到wpf中控件屬性接受的數據類型的引用?
- 22. 尋找一個JQ過濾器基於一個嵌套屬性
- 23. MVC3的HTML幫手和javascript
- 24. ABAddressBookRef是屬性的可接受類型嗎?
- 25. 將屬性添加到JavaScript函數是可以接受的嗎?
- 26. Jinja2:尋找一個視圖幫助者
- 27. 我怎樣纔能有一個接受在C#中的類型的[屬性]?
- 28. XMLHttpRequest的responseType屬性接受多個值
- 29. MVC3類驗證屬性
- 30. 你可以有一個私人屬性,哪種類型是一個接口?
事實上,它已經在mvc期貨庫 – archil 2011-05-20 06:07:38