MVC

2012-01-31 10 views
8

'de metin kutusu için yer tutucuya veri açıklaması sağlayın MVC görünümündeki bir metin kutusunda placeholder arası bir veri kutusu için ne olması gerektiğine dair bir veri açıklaması olması için bir yol var mı?MVC

Örnek: Benim ViewModel.cs olarak

, gibi bir şey: Bence

[Placeholder="First name"] 
public string FirstName { get; set; } 

:

@this.Html.TextBoxFor(m => m.FirstName) 

bu hale olsaydı:

<input type="text" placeholder="First name" ... /> 

Bu mümkün mü? Teşekkürler!

cevap

10

değil modelinde,

@this.Html.TextBoxFor(m => m.FirstName, new{placeholder="First name"}) 

Ah deneyin.

Kendi custome özniteliğinizi http://blogs.msdn.com/b/aspnetue/archive/2010/02/24/attributes-and-asp-net-mvc.aspx tanımlayabilirsiniz. Ben html oluşturmak için özel bir html yardımcısına ihtiyacınız olacağını düşünüyorum.

+1

Bu harika! hangi niteliğin miras almam gerektiğini biliyor musun? bağlantınızdaki örnek 'ActionFilterAttribute' –

+0

'dan devraldığı örnekte, özellik sınıflarının bir listesi vardır, yapmak istediğinize en yakın olanı seçin. Veya temiz (er) başlangıç ​​için System.Attribute öğesinden devralın. – PhilW

0

Öyle düşünmüyorum, ancak bunu yapmak için kendi özel yardımcınızı ve özniteliğinizi yazabilirsiniz. http://www.aspnetwiki.com/page:creating-custom-html-helpers

+0

Bağlantı için teşekkürler! Maalesef, görünüm modelimde mülkün üzerinde [Placeholder = "Ad"] 'ı bulabileceğim herhangi bir örnek göremiyorum. Bunun yerine, bu sabit kodlanmış metnin, görünüm modeliyle birlikte olmasını istediğim için, bu html.TextboxFor (m => m.FirstName, "Yer tutucu metni burada") için örnekler vardır. görünüm. –

+0

Biliyorum, kendi yardımcınızı ve özniteliğinizi yuvarlamanız gerekir. Burada, BuildStarted'ın cevabı, http://stackoverflow.com/questions/7418664/access-displayname-attribute-from-the-model-in-mvc-view adresinde nasıl özel bir özellik oluşturduğunu gösterir. Özel yardımcınız özel özniteliğinizi okuyabildi. –