Je voudrais utiliser l'assistant ajax pour créer des requêtes ajax qui envoient des données dynamiques supplémentaires avec le poste (par exemple, obtenir le dernier élément avec class = blogCommentDateTime et envoyer le valeur de ce dernier au contrôleur qui ne retournera que les commentaires du blog après).asp.net mvc ajax formulaire assistant/poste données supplémentaires
Je l'ai fait avec succès si avec l'aide du plug-in jQuery Form comme ceci:
$(document).ready(function() {
$("#addCommentForm").submit(function() {
var lastCommentDate = $(".CommentDateHidden:last").val();
var lastCommentData = { lastCommentDateTicks: lastCommentDate };
var formSubmitParams = { data: lastCommentData, success: AddCommentResponseHandler }
$("#addCommentForm").ajaxSubmit(formSubmitParams);
return false;
});
Ce formulaire a été créé avec la méthode Html.BeginForm().
Je me demande s'il existe un moyen facile de le faire en utilisant l'assistant ajax.beginform()? Lorsque j'essaie d'utiliser le même code mais de remplacer html.beginform() par ajax.beginform(), lorsque j'essaie de soumettre le formulaire, j'émets 2 messages (ce qui est compréhensible, l'un étant pris en charge par l'assistant, l'autre par moi avec le JS ci-dessus.Je ne peux pas créer 2 demandes, donc cette option est sortie)
J'ai essayé de se débarrasser du retour faux et en changeant ajaxSubmit() à ajaxForm() de sorte que cela ne ferait que «préparer» le formulaire, et cela ne mène qu'à un seul article, mais il n'inclut pas le paramètre supplémentaire que j'ai défini, donc cela ne vaut rien non plus. J'ai ensuite essayé de conserver l'ajaxForm() mais j'appelais cela chaque fois que le bouton submit sur le formulaire est cliqué plutôt que lorsque le formulaire est soumis (je suppose que c'est presque la même chose) et cela aboutit également à 2 posts. La principale raison pour laquelle je pose cette question est que j'ai rencontré quelques problèmes avec le javascript ci-dessus et que j'utilise la validation mvc fournie par le framework mvc (pour lequel je vais poser une autre question) et je voudrais le savoir donc je peux plonger plus loin dans mon problème de validation.
Avez-vous trouvé une solution pour cela? – cdpnet