2009-12-24 5 views
1

Donc je commence juste sur un simple blog comme l'application écrite en ASP.NET MVC. Fondamentalement, j'ai fait ma CSS et j'utilise jquery pour certains effets, mais je voudrais faire quelque chose comme un pour chaque boucle pour afficher toutes les données dans mon tableau posts séparés dans leurs propres petites sections. Le CSS a déjà le style pour les divs, il suffit donc de créer un montant dynamique sur la page.Comment générer des Divs dans ASP.NET MVC?

EDIT: Désolé, je ne le mentionne pas, deux choses cependant:

1) Je ne l'ai jamais écrit une application ASP.NET MVC basée uniquement des morceaux de code pour ASP.Net classique

2 Pour clarifier ce que je demande, je veux dire quand la personne charge la page, tous les divs seront déjà générés, je ne vais pas en ajouter après le chargement. Comme je l'ai dit, c'est pour rendre la vue principale d'un blog, tous les messages seraient récupérés à partir du modèle que j'essaie juste de comprendre comment le rendre dans la vue.

Merci

Répondre

0

En supposant que vous transmettez un IEnumerable de Posts à la vue dans le ViewModel, vous utiliserez quelque chose de similaire au code donné ci-dessous.

<%foreach (var post in Model) {%> 
<div class="post"> 
    <h2> 
     <%=post.Title %></h2> 
    <p> 
     <%=post.Body %> 
    </p> 
    <p> 
     <%= post.Author%> 
    </p> 
</div> 
<%} %> 
+0

Merci, juste avant que je vienne ici, j'ai réalisé qu'il doit y avoir un moyen d'exécuter du code à l'intérieur de la vue et <% %> est-il. Merci encore. – edude05

+0

Une meilleure solution serait de représenter votre publication en tant que vue partielle et d'utiliser RenderPartial dans la boucle. voir http://vinbrown.blogspot.com/2009/03/using-renderpartial-to-recursively.html –

+0

Vous pouvez certainement utiliser des partiels ici, mais je pense que pour des situations simples, le rendu d'un bloc utilisant des partiels est exagéré. Cependant, cela me rendra plus attrayant lorsqu'il est utilisé avec la fonctionnalité 'DisplayTemplates' de asp.net mvc 2. De plus, les débutants doivent comprendre la façon de base de rendre le contenu avant de se pencher sur les choses avancées. –

0

Sur le serveur, ses activités comme d'habitude, en utilisant RenderPartial et boucle votre collection de messages. Sur le client, en utilisant jquery il suffit d'appeler.

var $newDiv = $("<div />"); 

et de l'ajouter à l'emplacement de votre dom dont vous avez besoin.

$newDiv.append(document.body); 

également un Heres moteur templating frais par le fabricant de jquery, ne sais pas si c'est ce que vous avez besoin? Click here Il est recommandé de changer le contexte du tag en quelque chose comme < # #> au lieu de johns <%%> ce qui serait en conflit avec asp.nets construit en un.

+0

@Ori Je pense qu'il est à la recherche du côté serveur un –

+0

Ensuite, il doit simplement utiliser RenderPartial et boucle la collection de modèle. –

Questions connexes