J'ai deux listes de sélection qui affichent chacune des utilisateurs et deux boutons (ajouter et supprimer) qui déplacent les utilisateurs de la liste de sélection de gauche à droite et vice versa. L'ajout et la suppression des utilisateurs dans les listes de sélection sont effectués à l'aide de jQuery 1.4.4. Le problème est qu'après avoir déplacé au moins un utilisateur et cliqué sur Soumettre, le tableau $ _POST ne contient aucune liste de sélection. Si je recharge la page et clique sur Envoyer sans déplacer aucun utilisateur, les listes de sélection apparaissent dans le tableau $ _POST.
Le code que je utilise pour le bouton Ajouter est:
$("#btnAdd").click(function() {
// check if there are any unassigned users selected
if($("#Unassigned_users").val()) {
// for all selected options ...
$("#Unassigned_users option:selected").each(function(n) {
var newOption = \'<option value="\' + $(this).val() + \'">\' + $(this).text() + \'</option>\';
// check if there are any options in the assigned users
if ($("#Assigned_users option").size()) {
// put the item after the last option
$("#Assigned_users option:last").after(newOption);
}
// the assigned users list is empty
else {
// replace the contents of the select tag with the new option
$("#Assigned_users").html(newOption);
}
// finally, remove the selected item
$(this).remove();
});
}
});
Unassigned_users et Assigned_users sont les identifiants des éléments de sélection.
Vous avez une syntaxe invalide, regardez simplement la surbrillance des couleurs ici (indice: guillemets échappés). Copier + coller problème ou problème réel? – deceze
Oui, c'est parce que j'ai cet extrait de code dans une chaîne PHP. J'ai oublié d'annuler le contenu. –
Ne pas écrire le code d'une langue à l'intérieur des chaînes d'un autre. Au moins, utilisez la syntaxe HEREDOC. :) – deceze