J'ai une fonction javascript comme celle-ci qui est utilisée avec Select2.
function formatResult(item) {
var markup = '<div class="card">\
<div class="card-header">\
<div class="avatar">\
<img src="http://mysite/profile/' + item.Username + '_thumb.jpg"/>\
</div>\
<div class="name">' + item.FirstName + ' ' + item.LastName + '</div>\
<div class="title">' + item.Title + '</div>\
</div>\
</div>';
return markup;
}
Et cela fonctionne, bien que la construction du HTML soit fastidieuse lorsqu'il s'agit d'une chaîne de caractères.
Ce que je voudrais faire, c'est en faire un partiel pour faciliter la maintenance et l'édition.
Idéalement, je veux quelque chose comme ça.
function formatResult_User(item) {
var markup = '@Html.Raw(Html.Partial("_UserCardTemplate").ToString().Replace(Environment.NewLine, ""))';
return markup;
}
Mais comment puis-je insérer le item
les variables reviennent ? Dois-je simplement mettre une valeur de remplacement et utiliser la fonction replace()
en el markup
variable telle que markup = markup.replace('item.Title', item.Title)
? Existe-t-il une meilleure solution ?