Domanda

appena iniziato a giocare con knockout.Js che è un quadro fantastico Steve è veramente fatto bene con quello. Una cosa che non riesco a fare al minuto è impliment con la mia Html Helpers. Così per exmaple ho:

 <%: Html.TextBoxFor(model => model.Division) %>

ma mi piacerebbe linea per usare il databind su questo, ma al minuto non posso ottenere l'attributo "databind" in l'helper. Ho usato attributi prima come @class, Id ecc ma questo è difficile a causa delle - tutte le idee .. Ive ha provato:

<%: Html.TextBoxFor(model => model.SupplierName, new { data-bind = "SupplierName"}) %>

e

 <%: Html.TextBoxFor(model => model.SupplierName, new { "data-bind"" = "SupplierName"}) %>

, ma nessuna gioia. si usano parecchio i soccorritori Editor e casella di testo e mi piacerebbe molto di integrare questi nella voce del knock out con ..

Qualsiasi aiuto molto appretiated

È stato utile?

Soluzione

Questo dovrebbe funzionare:

<%: Html.TextBoxFor(model => model.SupplierName, new { data_bind = "SupplierName"}) %>

I nomi delle variabili non può contenere un trattino (-). Ma se si utilizza un carattere di sottolineatura (_) in un attributo HTML, viene automaticamente convertito in un trattino quando la sua 'resa'

Altri suggerimenti

È in grado di fornire gli attributi sia come oggetto anonimo o come un dizionario. In questo caso particolare un dizionario dovrebbe essere utilizzato:

<%: Html.TextBoxFor(m => m.SupplierName, new Dictionary<string, object> { { "data-bind", "SupplierName" } }) %>

Ho usato la risposta di Jim come base per la mia soluzione MVC 4.

Jim:

<%: Html.TextBoxFor(model => model.SupplierName, new { data_bind = "SupplierName"}) %>

Mine:

@Html.TextBoxFor(model => model.SupplierName, new { data_bind = "value: SupplierName" })

Utilizzando Html.TextBoxFor con la proprietà di classe e personalizzato ( MVC) per come farlo in MVC3. Im usando MVC2 quindi la risposta di cui sopra era perfetto per me

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top