Est-il possible de concaténer des chaînes de caractères dans les attributs html?
Je suis l'aide de MVC3 et je voulais utiliser une vue partielle de la dynamique des éléments du DOM. C'est ma vue partielle:
@model MVCApp.ViewModels.TitlesViewModel
<div class="display-label">Name</div>
<div id="label"+"@Model.Id" class="display-field">@Model.InitValue</div>
Modèle.L'Id est 1, mais dans le code HTML dans le navigateur, j'ai actuellement:
id="label"+"1"
Donc si je fais quelque chose comme:
alert($("#label1").text())
Il y a une boîte d'alerte avec rien dedans.
Alors, comment puis-je ajouter les deux cordes ensemble pour former un tout cohérent chaîne qui est reconnu par jQuery (ou d'un document.getElementByID(str) pour cette question).
Vous devez vous connecter pour publier un commentaire.
Essayez ceci (vérifié):
<div id="@("label"+Model.Id)" class="display-field">@Model.InitValue</div>
Merci beaucoup.Vous voulez:
Rasoir reconnaître l' @ comme le début du code, de l'exécuter et de rendre les résultats en place dans l'attribut.
Edit:
Cela ne fonctionne pas bien dans un commentaire, mais ici, c'est une ligne de l'un de mes Rasoir contrôles:
Essayez d'ajouter un trait d'union (-) avant le @. C'est tout à fait possible que de Rasoir pense que c'est une adresse e-mail et le laisser seul!
Juste d'ajouter une autre option car c'est ce qui a fonctionné pour moi lors de la tentative de la concaténation de la chaîne et le modèle de valeur qu'une pièce d'identité dans un @html.ActionLink et aussi pour la valeur de texte. J'ai besoin d'utiliser des chaînes de caractères.Concat. Ne sais pas si c'est mauvais d'un point de vue des performances.