J'utilise l'exemple martijn Boland's à la page.Comment faire la pagination et le filtrage dans les applications MVC
L'URL de mes changements d'applications lorsque je clique sur les numéros de page:
http://localhost:1202/Issue?page=6
Jusqu'à présent, si bon. Le problème est lorsque j'ajoute une liste déroulante qui soumet sur le changement, je ne peux pas page aussi bien que filtrer. Si je change ma liste déroulante, je devrais passer le projectId dans le querysting, ma vue de partail actualisera et montrera mes recored filtrés.
Maintenant, quand je page le paramètre de filtre ne colle pas dans la chaîne de requête ainsi que la sélection dans mon menu déroulant ne colle pas.
Comment puis-je paginer et filtrer?
Index.aspx
<form id="form-post-project-selection" class="post-comments" method="get">
<label for="Country">Project:</label>
<%= Html.DropDownList("ProjectList", "--All--") %>
</form>
<% Html.RenderPartial("MyIssues", Model); %>
<script type="text/javascript">
$("#form-post-project-selection").submit(function(evt) {
var frm = $("#form-post-project-selection");
var action = frm.attr("action");
var serializedForm = frm.serialize();
var projectId = jQuery.trim($("ProjectList").val());
if (projectId.length < 1 || projectId == "-1")
return;
});
$("#ProjectList").change(function() {
$("#form-post-project-selection").submit();
});
</script>
L'exemple dans le projet de Martijn ne postez pas de retour lors du déplacement vers une autre page, mais a plutôt des liens comme: 23 – Picflight
OK donc lors de la création de vos liens pour la pagination assurez-vous d'ajouter le projectId au lien ainsi comme le numéro de page. Dans le lien que vous avez collé la solution est sous la rubrique scénarios avancés à vos pages ajouter les valeurs de routage supplémentaires dont vous avez besoin, par exemple. <% = Html.Pager (ViewData.Model.PageSize, ViewData.Model.PageNumber, ViewData.Model.TotalItemCount, nouveau {categoryname = ViewData ["CategoryDisplayName"]})%> – Webmonger
+1 Merci d'avoir signalé les scénarios avancés. – Picflight