2015-03-26 1 views
2

Comment puis-je ouvrir une URL dans un nouvel onglet/fenêtre à partir du contrôleur MVC basé sur la condition de succès. De quelle façon je peux y arriver avec l'aide du code C# sans avoir à écrire javascript?Ouvrir l'URL dans un nouvel onglet du contrôleur MVC

+0

À quoi ressemble votre code? – TheLazyChap

+0

duplication possible de [action du contrôleur ASP.Net MVC 3 et ouvrir une nouvelle fenêtre] (http://stackoverflow.com/questions/7790355/asp-net-mvc-3-controller-action-and-open-new-window) – Tommy

+0

@TheLazyChap C'est ce que je suis en train d'atteindre du contrôleur <- langue: C# -> Si (user.selectedmethod == "Connexion") { JavaScript retour (» "); } – Yoda

Répondre

9

Cela ne peut être fait à partir du contrôleur, mais plutôt de votre rasoir Vue:

@Html.ActionLink("linkText", "Action", new {controller="ControllerName"}, new {target="_blank"}) 
+0

C'est ce que j'essaie de réaliser - L'utilisateur clique sur le bouton et il frappe un contrôleur où il vérifie certains filtres et s'il réussit, il devrait ouvrir un exemple d'URL "http://google.com dans une nouvelle fenêtre Si (user.selectedmethod == "Connexion") {JavaScript retour ("");} <- - language: C# -> – Yoda

+0

Pourquoi vous n'utilisez pas JQuery ou javascript alors qu'est-ce que le pb avec cela? Vous pouvez faire un appel ajax et valider les données, puis naviguer dans une nouvelle fenêtre basée sur cela? –

2

appel URL du contrôleur:

return RedirectToAction("Edit", "Home"); 


Appel de la méthode d'action de View en utilisant HTML Bouton ou Image:

Lors de la création d'un lien vers une action de contrôleur dans ASP.NET MVC, l'utilisation de la méthode générique ActionLink est préférable, car elle autorise les liens fortement typés qui sont refactoring conviviaux.

@Html.ActionLink("Edit", "Home", new { id = item.ID }) 

Cependant, que se passe-t-il si nous voulons avoir une image liée à une action? Vous pourriez penser que vous pouvez combiner les ActionLink et de l'image et des aides bouton comme ceci:


l'aide du bouton:

<button onclick="location.href='@Url.Action("Edit", "Home",new { Model.ID })';return false;">Detail</button> 

<input type="button" title="Delete" value="D" onclick="location.href='@Url.Action("Edit", "Home", new { id = item.ID })'" /> 


En utilisant l'image:

<a href="@Url.Action("Edit", "Home", new { id = item.ID })" title="Edit"> 


Espérons que cela aide ...