2011-10-17 11 views
7

Ho un controller e un'azione. questa azione è per salvare i dati nel database. e ora, voglio quando invio un pulsante, il mio controller esegue un'azione e apre una nuova finestra.ASP.Net MVC 3 Azione controller e Apri nuova finestra

public ActionResult New(FormCollection collection) 
    { 

     data.Population_Code = collection["Countrys[0].CountryCode"]; 
     data.Population_Desc = collection["Countrys[0].CountryDesc"]; 
     data.Population_Grouping = collection["Countrys[0].CountryGroup"]; 
     data.Population_Type = "CNTRY"; 
     data.Population_Redudant = "N"; 
     data.Population_Modified_At = officeCode.User_Office.ToString(); 
     db.SaveChanges(); 

     //example for new window 
     //window.open('/Report/New.aspx') 

     return RedirectToAction("index"); 
    } 

quindi il mio controller esegue un'azione e apre una nuova finestra.

chiunque può aiutarmi?

grazie

risposta

16

Tecnicamente, questo può essere fatto con il ritorno javascript che aprirà la nuova finestra.

Tuttavia, la maggior parte dei browser ucciderà una nuova finestra chiamata in questo modo (ad esempio blocco popup).

Sarebbe meglio se possibile, aprendo il collegamento alla tua azione in una nuova finestra dall'inizio;

@Html.ActionLink("New report", "New", "Report", null, new {target = "_blank"}) 

Modifica

posso vedere dalla vostra azione, che è probabilmente una forma che crea la relazione; puoi anche utilizzare l'attributo target='_blank' su un modulo.

+0

grazie Matt, sì, questo è per mostrare un rapporto. in realtà, ho una relazione sul menu. ma ora il mio capo mi dice di fare qualcosa di simile, ogni volta che il controller esegue una nuova azione mostrerà il report in una nuova finestra. e ora, mi sono confuso su come ottenere il valore aggiunto. vedere modifica –

+0

Sì, è possibile utilizzare l'esempio del link di azione per creare il collegamento del menu. Questo apre la nuova finestra * prima * chiamando l'azione, che può quindi salvare i dati e aprire la vista del report. –

+0

grazie ho fatto il mio problema. utilizzo i cookie per memorizzare batchId. –

Problemi correlati