J'essaie de faire une demande AJAX en utilisant $ .ajax dans MVC 4 avec Razor. Je ne sais pas comment l'implémenter.
En utilisant cette vidéo J'ai réussi à passer un appel lié à un lien qui a renvoyé des données, mais je n'arrive pas à faire la même chose à l'intérieur d'une fonction jquery. Je n'arrive pas à trouver d'exemples de base sur la façon de procéder. Voici avec quoi je travaille:
HomeController.cs
public string test(){
return "It works";
}
View.cshtml
function inventory(dealerID) {
$.ajax({
url: '@Url.Action("HomeController","test")',
data: {dealerID: dealerID},
type: 'POST',
success: function(data) {
process(data);
}
});
}
Il vous suffit d'en faire un ActionResult
. De plus, si vous utilisez un Ajax POST, l'action doit être marquée avec l'attribut HttpPost
. Essaye ça:
[HttpPost]
public ActionResult test(string dealerID)
{
return Content("It works");
}
Edit En fait, il y a quelques autres problèmes avec la syntaxe.
Url.Action
A les paramètres contrôleur/action dans le mauvais ordre - devrait être "ActionName" d'abord, puis "ControllerName"Url.Action
, Si la classe de contrôleur est "HomeController", alors vous avez juste besoin de "Home"success: function(data) {}
.$.ajax({
url: '@Url.Action("test", "Home")',
data: {dealerID: dealerID},
type: 'POST',
success: function(data) {
alert(data);
}
});