2011-01-12 18 views
5

在ASP.NET MVC中使用模板助手時,例如Html.EditorFor(x => x.Property)呈現的Html具有大寫的ID - 與我的屬性名稱匹配。ASP.NET MVC模板助手 - 如何獲取小寫的ID

爲了標準化所有html元素的ID我希望這是小寫。而不是手動指定ID--如果我重命名屬性,則不會更新,我想建立一個約定。

我確信我讀過這個可能在某處,我目前正在掃描interwebz找到它。但如果任何人都可以幫助我並節省時間,那就太棒了。

+0

這是一個很大的收穫很多工作。如果您擔心使用javascript或jquery選擇器標準化訪問權限會考慮如果您更改屬性名稱,則仍然必須調整jquery。 – jfar 2011-01-12 14:54:47

回答

0

目前ASP.NET MVC不提供任何的擴展點,讓您做到這一點。

0

您可以擴展Html.EditorFor;這tutorial可以讓你開始。

或者你用這樣的:

Html.EditorFor(x => x.Property).ToString().ToLower() 
+0

謝謝你。我希望理想情況下甚至不需要這樣做。我很確定我已經看到了一種方法來做到這一點。儘管對這個問題磕磕絆絆的其他人發表了好評。 – nick 2011-01-12 11:33:48

+0

這不起作用:`EditorFor`返回IHtmlString`,但將其轉換爲字符串將導致其未來的html編碼(至少在MVC 3中)。解決方法是`(new HtmlString(Html.EditorFor(x => x.Property).ToString()。ToLower())`。 – 2011-01-12 14:53:27