Ho un'app ASP.NET MVC che apre una vista "Richiesta" in una nuova finestra del browser. Quando l'utente invia il modulo, vorrei che la finestra si chiudesse. Come dovrebbe apparire il mio codice RequestController per chiudere la finestra dopo aver salvato le informazioni sulla richiesta? Non sono sicuro di cosa debba essere restituito l'azione del controller.Come si chiude una pagina MVC ASP.NET dal controller?
risposta
È possibile restituire una vista con il seguente javascript (oppure è possibile restituire un risultato JavaScript) ma preferisco la prima.
public ActionResult SubmitForm()
{
return View("Close");
}
View per chiudere:
<body>
<script type="text/javascript">
window.close();
</script>
</body>
Ecco un modo per farlo direttamente nel vostro controller, ma vi consiglio contro di essa
public ActionResult SubmitForm()
{
return JavaScript("window.close();");
}
Sembra che si potrebbe restituire un quasi vuoto Visualizza il modello che aveva semplicemente qualche javascript nell'intestazione che ha appena eseguito "window.close()".
Come ad esempio:
[HttpPost]
public ActionResult MyController(Model model)
{
//do stuff
ViewBag.Processed = true;
return View();
}
La vista:
<%if(null!=ViewBag.Processed && (bool)ViewBag.Processed == true){%>
<script>
window.close();
</script>
<%}%>
Usando questo è possibile chiudere la finestra come questa:
return Content("<script language='javascript'>window.close();</script>");
Per me, questo ha appena restituito lo script come stringa e visualizzato, non eseguito. –
ritorno Content ("
questo ha lavorato per me per chiudere la finestra.
Controller:
return PartialView("_LoginSuccessPartial");
Vista:
<script>
var loginwindow = $("#loginWindow").data("kendoWindow");
loginwindow.close();
</script>
- 1. Come si trasmettono i dati POST da un controller MVC asp.net a una pagina asp.net non MVC?
- 2. asp.net mvc controller generico
- 3. asp.net mvc metodo 4 chiamata dal controller pulsante
- 4. ASP.NET MVC controller azioni design
- 5. Controller asincrono in ASP.NET MVC
- 6. Fabbrica controller ASP.NET MVC 6
- 7. ASP.NET MVC - Azione corrente dal codice del controller?
- 8. ASP.NET MVC Controller aggiungendo disabilitato
- 9. Come indirizzare una pagina .aspx nel progetto asp.net mvc 3?
- 10. Gestione delle eccezioni nel controller (ASP.NET MVC)
- 11. Reindirizza a URI esterno dal controller MVC ASP.NET
- 12. ASP.Net MVC Controller Namespace array
- 13. ASP.NET MVC 3 _Layout.cshtml Controller
- 14. Come selezionato discesa valori dal controller MVC
- 15. avanti ad una pagina html statico dal controller
- 16. ASP.NET MVC - Respository/Service/Controller
- 17. Controller MVC IoC e ASP.NET
- 18. ASP.NET MVC dropdown-list dal database
- 19. asp.net mvc La risposta non autorizzata è una pagina vuota?
- 20. Passing informazioni tra controller in ASP.Net MVC-
- 21. Come si chiude un jQuery Simplemodal?
- 22. Restituisce visualizzazioni diverse dal controller MVC
- 23. ASP.Net MVC: invio JSON al controller
- 24. ASP.Net MVC 3.0 Ajax.BeginForm sta reindirizzando a una pagina?
- 25. Visualizzare una vista da un altro controller in ASP.NET MVC
- 26. Test controller unità ASP.NET MVC con HttpContext
- 27. Ricerca locale dal controller in primavera MVC
- 28. Visual Studio si chiude sempre
- 29. ASP.NET MVC: diversi modelli per pagina principale e vista pagina
- 30. ASP.NET MVC Autentica prima del controller istanziato
curioso: perché si dovrebbe sconsigliare la soluzione di controllo di sola? – gfrizzle
Stai manipolando l'interfaccia utente chiudendo una finestra. Non sembra una responsabilità del controller. – womp
Ho appena provato a restituire il codice JavaScript e non funziona. Visualizza solo "window.close();" sullo schermo. Ho letto da qualche altra parte che dovresti chiamare questa azione usando Ajax ma non sono stato in grado di testarlo. Sto solo dando l'idea. – Aries51