3 votes

Remplir des champs de formulaire de type tableau avec jquery

Je voudrais POST un formulaire avec des attributs comme décrit ici (tableau convivial MVC) : https://stackoverflow.com/a/5003686/1246219 La raison pour laquelle je veux utiliser un formulaire POST plutôt qu'ajax est que le résultat est un fichier à télécharger, c'est-à-dire qu'il n'y a aucune autre raison d'utiliser un formulaire.

Cependant, j'ai un tableau javascript contenant les valeurs (entiers) que je voudrais soumettre. Les seules façons d'y parvenir auxquelles je pense sont soit de boucler et de créer des éléments de saisie pour chaque entrée, soit de remplir un seul champ de formulaire avec une chaîne délimitée par des virgules et de l'analyser côté serveur. Existe-t-il une meilleure solution ?

MISE À JOUR - Si cela intéresse quelqu'un, j'ai fini par adopter l'approche en boucle, et il se trouve que je l'ai écrite avec d3 à la place.

var selected = [1,2,3];
var selectionBinding = d3.select("#myForm").selectAll("input[name='myField']").data(selected);
selectionBinding.exit().remove();
selectionBinding.enter().append("input")
                .attr("type", "hidden")
                .attr("name", "myField")
                .attr("value", function (data) { return data });
$("#myForm").submit();

4voto

closure Points 3935

Ma suggestion serait de créer un regular Javascript Array avec des données et avoir un formulaire avec input type text . Lorsque vous soumettez le formulaire, définissez la valeur du texte d'entrée en tant que JSON.stringify(myArray)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X