2011-01-21 15 views
22

Ho una colonna di griglia con caselle di controllo e voglio dare loro un ID diverso. L'ID è basato sul CustomerId nel modello. Quale sintassi dovrei usare per concatenare il [email protected]Come concatenare l'id dell'elemento HTML usando Razor ASp.NET MVC

// using the telerik grid 
id="[email protected]" // does not work 

// questo metterà il valore di @ item.Customernumber la casella id

columns.Template(@<text><input type='checkbox' id="@item.Customernumber" name="@item.CustomerNumber" value="@item.OrderNumber" /></text>).Width(50) 

seconda opzione:

columns.Template(@<text><input type='checkbox' id="[email protected]" name="@item.CustomerNumber" value="@item.OrderNumber" /></text>).Width(50) 

sopra renderà come

<input type="checkbox" id="[email protected]" value=... /> 
+0

Come si concludono "non funziona", ciò che sta accadendo. Dal codice che pubblichi, non riesco a vedere se questo è dal tuo View o controller. Pubblica solo un po 'di più (il wrapping {} o sarebbe bello per ottenere il contesto). – GvS

+1

@johndoe, la risposta risolve il problema. potresti contrassegnarlo come risposta? – AnarchistGeek

+0

http://stackoverflow.com/questions/6671086/is-there-a--to-concatenate-strings-in-html-attributes – AnarchistGeek

risposta

39

[email protected] sarà non funziona a causa di rasoio pensa come di una e-mail, è necessario fare in questo modo, invece: [email protected](item.OrderNumber)

+0

si aggiunge '(' anche nei dati –

+0

[Qui] (http://stackoverflow.com/questions/4702957/asp-net-mvc-razor-concatenation/) è un altro post, la speranza aiuta qualcuno. – stom

Problemi correlati