ciao,
quello chi ti server e èuna funzione javascript che chiama il metodo del controller, i dati li leggi dalle input con jquery.
dichiara nella pagina html la funzione javascript GetjsNomeCognome
che non fa altro che chiamare il metodo del controller.
la parte importante è @Url.Action("GetNomeCognome", "Home")
il primo parametro è il nome del metodo dichiarato nel controller
il secondo + il nome del controller senza la parola "Controller"
quindi Homecontroller -> Home
function GetjsNomeCognome(VarNome,VarCognome){
$.ajax({
type: "POST",
url: '@Url.Action("GetNomeCognome", "Home")',
data: { nome: VarNome, cognome: VarCognome },
success: function (msg) {
alert(msg);
}
});
}
quindi al page ready leggi i parametri con jquery e li passi alla
funzione js, la quale chiamerà il metodo server e ti ritornerà il risultato.
$(document).ready(function () {
$("#Button1").click(function (e) {
var nome = $("#nome").val();
var cognome = $("#cognome").val();
GetjsNomeCognome(nome,cognome);
});
});
importante: il metodo lato server deve avere 2 parametri string che si
devono chiamare esattamente come le variabili nella properità data
del metodo js.
quindi :data: { nome: VarNome, cognome: VarCognome }
i parametri sul metodo server devono chiamarsi nome e cognome.
NB: se hai necessità di ritornare oggetti complessi invece che
semplici stringhe devi usare il formato json.
in .net c'è una classe che converte un oggetto .net in un oggetto
json.
se hai bisogno di altre info scrivimi pure anche dei pm, sono fresco di un progettone MVC 3 razor.