È possibile utilizzare HTMl.RenderAction utilizzando ajax per fornire il parametro?Html.RenderAction using AJAX
Ho un'azione di controllo come questo
[ChildActionOnly]
Public ActionResult EmployeeData(string id)
{
Employee employee = new Employee();
//do work to get data
Return PartialView(employee);
}
La visione parziale è solo un piccolo tavolo con alcuni dati dei dipendenti (nome, indirizzo, ecc)
Ho poi avere una pagina con un menu a discesa elenco dei dipendenti con il campo di dati è l'id necessaria per EmployeeData (string id)
vorrei utilizzare Ajax in modo che quando un impiegato è selezionato da un elenco a discesa verrà visualizzata la vista parziale EmployeeData sotto di essa senza aggiornare la pagina . Poi di nuovo se viene selezionato un altro dipendente.
Anche se non sono sicuro di come farlo, se è possibile.
Come è stato consigliato, ecco quello che ho ora. (per favore non importa che questo non è l'esempio dei dati dei dipendenti che ho menzionato sopra, che i dati non sono pronti nel DB e ho più aree che faranno la stessa cosa quindi ho deciso di lavorare su questo oggi)
ecco il mio il JS a mio avviso
$("#repList").change(function() {
var id = $("#repList").val();
$.ajax({
url: '/Reporting/GetSalesTargets/' + id,
success: function (result) {
$("#partialdiv").html(result);
},
error: function() {
alert("error");
}
});
});
io sono sempre per l'azione di controllo che restituirà la vista, qui si tratta.
public ActionResult GetSalesTargets(string id)
{
int month = DateTime.Now.Month;
SalesMarketingReportingService mktSrv = new SalesMarketingReportingService();
SalesTargetModel model = mktSrv.GetRSMSalesTargetModel(id, month);
return PartialView(model);
}
Come faccio a visualizzare il parziale, anche se in funzione il successo? – twal
'$ ('# somedivid'). Html (risultato);' dove 'somedivid' è l'id di un elemento DOM che ospiterà il risultato. –
Oh capisco, mi dispiace di aver perso $ ('# somedivid'). Grazie, ci proverò! – twal