web-dev-qa-db-fra.com

Implémenter un appel Ajax en utilisant les balises data- *

J'essaie d'implémenter un appel Ajax en utilisant les balises data- * comme décrit dans jquery-ajax-unobtrusive

Je sais que je peux utiliser une fonction javascript avec $ .ajax () mais mon but est d'expérimenter les balises data-ajax ...

J'ai essayé ce code dans le fichier cshtml

<a class="btn btn-primary" data-ajax-url="/Home/AjaxSample" data-ajax="true" data-ajax-success="AjaxSuccess" data-ajax-failure="AjaxError" data-ajax-method="GET">Ajax</a>

// other code...

function AjaxSuccess() { alert('AjaxSuccess'); }
function AjaxError() { alert('AjaxError'); }

Le navigateur affiche le bouton, bien sûr, mais rien ne se passe lorsque je clique dessus. Je ne découvre aucune erreur dans le débogueur du navigateur. Rien ne se passe apparemment.

Intellisense n'affiche pas les balises data-ajax et ses amis. Ai-je oublié d'inclure quelque chose?

Existe-t-il des exemples de travail complets?

15
Tonyc

La réponse des commentaires (personne ne l'a ajoutée):

<script src="~/lib/jquery-ajax-unobtrusive/jquery.unobtrusive-ajax.j‌​s"></script>
<!-- the ~ is to symbolize your project's wwwroot folder

Ajoutez ce qui précède à votre maquette principale avec tous vos autres scripts (_Layout.cshtml par défaut).

Cela inclut le fichier ajax jQuery non intrusif dans toutes vos pages, afin que le script principal qui effectue tout le travail soit inclus.

Avant de faire cela, assurez-vous d’avoir installé le paquet Microsoft.Jquery.Unobtrusive.Ajax

1
Solver