2014-05-04 10 views
27

voglio utilizzare l'attributo segnaposto nel Html.EditorFor così ho fatto, proprio come nella prima risposta: Html5 Placeholders with .NET MVC 3 Razor EditorFor extension?Come posso utilizzare l'attributo segnaposto con Html.EditorFor?

Ma nella parte finale, non ho la cartella EditorTemplates così ho creato e quando ho ho provato a creare la vista string.cshtml, non potevo perché il nome "string" è riservato, quindi ho scelto invece stringg.cshtml e non ha funzionato! Devo cambiare il nome altrove nel mio programma? Ho fatto esattamente la risposta ...

Grazie!

risposta

41

aggiornamento a MVC 5.1 ed è possibile usare l'HTML attributi in EditorFor:

@Html.EditorFor(m => m.variable, new { htmlAttributes = new { placeholder = "Your Placeholder Text" } }) 

http://www.asp.net/mvc/overview/releases/mvc51-release-notes

+0

+1 - Grazie per il collegamento. Direi che questa è la tua migliore opzione se sei disposto ad effettuare l'upgrade alla versione 5.1. Funziona alla grande. – Termato

+1

Perché hai dovuto usare '@' prima dell'attributo 'placeholder'? – Yoda

+0

Non so perché, ma è così che è fatto. Quando si enumera htmlAttributes è necessario utilizzare @ affinché vengano riconosciuti. (@class, @id ...) – Medo

3

Quando si utilizza TextBoxFor o TextAreaFor piuttosto che EditorFor, utilizzare solo la coppia chiave-valore interiore da @ risposta di Medo , dato che il metodo prevede direttamente un oggetto htmlAttributes:

@Html.TextBoxFor(m => m.variable, new { placeholder = "Your Placeholder Text" }) 

(I reali ze questo è tangente alla domanda iniziale, ma avendo questo qui mi avrebbe aiutato quando sono atterrato su questa pagina in precedenza, alla ricerca di una risposta a come aggiungere testo segnaposto a un Html.TextAreaFor!)

6
@Html.EditorFor(model => model.members_ssn, new { htmlAttributes = new { @class = "form-control", placeholder = "Your Example Here" } }) 
+2

Ti spiace prenderti qualche minuto e spiegare cosa sta facendo il tuo codice? –

0

utilizzare alcuni jQuery , ad es .: $ ("# FirstName"). attr ("segnaposto", "Non digitare il nome - utilizza il pulsante Cerca");

Problemi correlati