Je passe une variable JavaScript contenant une chaîne sur le serveur via jquery.ajax. Bien que la condition "succès" soit appelée, le WebMethod côté serveur n'est jamais appelé. Client: serveur: p>
4 Réponses :
Essayez des corrections suivantes pour votre demande AJAX:
$.ajax({
type: "post",
url: "Playground.aspx/childBind",
data: "{sendData: '" + ID + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) { alert("successful!" + result.d); }
})
Je voudrais ajouter une note: vous aurez une erreur de données de votre chaîne "id" (ou autre champ) contient des citations telles que = '. Résolvez ce problème:
var DTO = {'sendData': ID};
$.ajax({
"type": "POST",
"dataType": 'json',
"contentType": "application/json; charset=utf-8",
"url": sSource,
"data": JSON.stringify(DTO),
"success": function (msg) {
//do something
}
});
Essayez comme ça:
JQuery: aspx.cs: p>
J'ai rencontré le même problème. Après googling, j'ai trouvé la solution et ça marche pour moi. Naviguez vers public static class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
//settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);
}
}