J'essaie d'envoyer des données à mon code derrière la méthode. Cela fonctionne sauf lorsque j'ajoute au paramètre data
. Pourquoi le param i ajouté provoque-t-il l'échec de la méthode Web? MISE À JOUR: Après avoir vu quelles erreurs côté client ont été lancées, il semble que l'ID est indéfini. Ma méthode d'obtention de l'ID des éléments est-elle incorrecte? Gardez à l'esprit que j'utilise jsTree et ca j'utilise éventuellement (obj)?jQuery Ajax demande à la méthode Web
Répondre
Après le débogage dans Chrome, j'ai découvert l'ID n'a pas été défini. Je réécris la date à param:
data: '{"nodeID": "' + obj.attr('id') + '"}',
parce que le obj
est le nœud que je suis actuellement en jsTree. Merci à tous ceux qui m'ont rappelé de déboguer dans FF ou Chrome et d'ajuster les guillemets.
@bryan thats great, vous pouvez reconnaître la même chose en donnant ... vote .. toute façon votre problème est résolu grand – kobe
essayer quelque chose comme ci-dessous:
jQuery.parseJSON('{"name":"John"}');
J'ai essayé 'var nodeID = jQuery.parseJSON ('{" nodeID ":"' + $ (this) .attr ('id') + '"}');' et en mettant 'data: nodeID,' mais pas de chance . Est-ce que j'ai fait quelque chose de mal? – balexander
@pouvez vous alerter nodeID une fois et vérifier comment il est formulé – kobe
@Veuillez vérifier dans le panneau net firebug comment les données vont backend. – kobe
essayez ceci:
data: "{nodeID: '" + $(this).attr('id') + "'}",
Edit: comme pour obtenir un ID, vous pouvez utiliser this.id
Quelques choses à essayer
- Supprimer le contenuType
- Retirez les guillemets autour des touches JSON
- Swap les guillemets simples et doubles
Il ressemblera à ceci:
function (obj) {
$.ajax({
type: "POST",
url: "Pages.aspx/EditPage",
data: '{nodeID: "' + $(this).attr('id') + '"}',
dataType: "json",
success: function (msg) {
alert('success!');
}
});
}
La référence 'this' que vous utilisez fait référence à jQuery 'this'. Par conséquent, votre ID n'est pas défini.
En supposant que vous essayez d'obtenir l'id « obj » de votre argument de la fonction, je réécrire la fonction comme ceci:
jQuery.fn.your_func_name = function(){
$.ajax({
type: "POST",
url: "Pages.aspx/EditPage",
data: "{'nodeID': '" + $(this).attr('id') + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.
});
}//function
utiliser comme ceci:
$('#some_element').your_func_name();
- 1. Jquery ajax obtenir la demande
- 2. Méthode Web avec ajax
- 3. méthode web inconnue utilisant ajax/jquery
- 4. JQuery Ajax Demande
- 5. demande paypal dans la méthode ajax
- 6. Demande Jquery Ajax Échec
- 7. Demande/Réponse JQuery AJAX
- 8. jQuery Ajax .html() demande prête
- 9. Appel d'une méthode Web à l'aide de jQuery Ajax
- 10. ajax méthode post jquery
- 11. Jquery Ajax Post ne demande pas une méthode d'action
- 12. demande Ajax jquery à un autre domaine
- 13. L'appel de la méthode différente à partir du fichier .ashx par jQuery Ajax demande
- 14. incapable d'appeler la méthode Web en utilisant ajax asp.net jquery
- 15. syntaxe de la méthode web pour jquery ajax en asp.net
- 16. cross domain jquery ajax demande
- 17. Ajax jquery demande non autorisée
- 18. JQuery AJAX comportement demande synchrone
- 19. ajax jQuery abort après la demande envoyée
- 20. Jquery Ajax Post demande problèmes
- 21. jquery ajax dans une autre demande ajax
- 22. Demande d'autorisation Facebook Jquery ajax?
- 23. JQuery demande de page ajax
- 24. jquery ajax demande erreur firebug
- 25. demande ajax Annulation précédente jquery
- 26. jQuery Datatable ajax JSON demande
- 27. Formulaires Web ASP.NET jQuery AJAX Passer plusieurs paramètres à la méthode Web
- 28. demande post jQuery (non AJAX)
- 29. jQuery AJAX retour Demande XML
- 30. jquery ajax demande problème intermittent
JSON utilise deux des guillemets autour des propriétés, donc ''{" nodeID ":"' + $ (this) .attr ('id') + '"}'' peut valoir la peine. – Robert
@may être formmatting issue – kobe
Il est intégré dans un jsTree c'est pourquoi il ressemble à ça. @ Robert J'ai essayé de changer les guillemets et cela n'a pas fonctionné. Lorsque les valeurs de paramètres de données sont supprimées, le service Web obtient le hit correctement. – balexander