2010-02-03 7 views
0

J'ai un lien sur une vue mvc asp.net qui ouvre une fenêtre contextuelle modale dans laquelle une deuxième vue MVC est rendue.Publication ASP.NET MVC sur boîte de dialogue/fenêtre contextuelle

La vue de la fenêtre Modal expose plusieurs fonctionnalités qui déclenchent une publication. Les publications publient les méthodes de contrôleur correctes mais lorsque je renvoie la vue mise à jour, la vue elle-même est rendue plutôt que rendue dans la fenêtre contextuelle modale.

C'est le popup est fermé, je ne suis plus sur le 1er "page parente" à la place de l'url autonome à la vue dans le popup modal est chargé.

Ce que je voudrais réaliser est qu'une publication dans la vue dans le popup modal charge la vue mise à jour dans la fenêtre modale?

Quelqu'un peut-il aider?

J'ai vu des références à des vues partielles et des appels ajax, mais je ne sais pas comment ils s'intègrent le mieux?

Merci, Griff

+0

ici un [article] pur (http://yassershaikh.com/how-to-create-a-modal-popup-in-asp-net-mvc -3-using-jquery /) pour cela ... – Yasser

Répondre

0

Tout d'abord, MVC ne Postback pas, il ne vient régulièrement soumet. Peut sembler sémantique, mais il y a une différence fondamentale.

Pour répondre à votre question, si vous voulez mettre à jour la fenêtre modale, vous devez passer par la route ajax. Ce que vous voulez faire, c'est envoyer la requête via ajax et recevoir la réponse, puis mettre à jour quelques divs dans la fenêtre modale.

Vous pouvez également effectuer un hack en référençant une propriété du modèle que vous transmettez à la vue. Ainsi, en fonction du modèle, vous pouvez afficher la vue partielle correcte et déclencher dynamiquement le déclencheur de fenêtre modale à la fin du vue.

+0

entré le code ici par accident –

0

merci pour votre réponse ... oui votre droit bien sûr je devrais avoir spécifié soumettre plutôt que postback! Je suis une tête asp.net convertie donc toujours coincé dans cet état d'esprit!

Je pense que j'ai l'idée, je ne sais pas comment faire, en particulier comment définir le contenu d'un div à partir d'une requête ajax?

a été d'essayer quelque chose liek ceci:

var URL = '<%= ResolveUrl("~") %>/ImagePicker/Index/0/283'; 
     $.get(URL, function(data) { 
      $("#Result").html(data); 
     }); 

<div id="Result"></div> 
+0

Vous auriez dû le laisser comme un commentaire à ma réponse :) Généralement sur StackOverflow, les réponses devraient juste être des réponses. Quoi qu'il en soit, dans votre exemple, dans l'action qu'est-ce que vous retournez? – Wil

Questions connexes