2011-06-06 6 views
2

Bonjour j'utiliser ce code pour supprimer des champs de saisie de texte vide de ma forme:jQuery 1.3.2 supprimer des valeurs vides

$('input:text[value=\"\"]', '#submForm').remove(); 

Comment puis-je obtenir les mêmes mais avec des valeurs vides déroulant comme celui ci-dessous?

<select><option value=""></option></select> 

Je dois supprimer la liste déroulante vide avec le jQuery remove();

Comment faire cela?

Merci!

Répondre

1

que diriez-vous (je ne pense pas que vous pouvez l'utiliser avec les attributs parce que la valeur est l'option. Est-ce que vous souhaitez supprimer l'option ou l'élément sélectionné?

$("select").each(function(){ 
     if($(this).val() == "") 
     $(this).remove(); 
    }); 
+0

Je veux enlever l'ensemble de l'élément de sélection si le menu déroulant reste sur la valeur vide (signifie que l'utilisateur n'a pas sélectionné de valeur sur cette sélection). Peux-tu m'aider avec ceci? –

+0

@DiegoP - Je pense que cela devrait fonctionner. Vous appelleriez ceci quand l'utilisateur soumet le formulaire que je suppose? –

6
$('select option[value=""]').remove(); 

Démo:http://jsfiddle.net/trXp8/

Ou, vous voulez dire entre la balise option, puis:

$('select option:empty').remove(); 

Démo:http://jsfiddle.net/X6BKA/

EDIT:

D'accord. Donc vous parlez d'une sélection multiple? Alors ceci fera:

$('select option:not(:selected)').remove(); 

Ceci supprimera les options qui n'ont pas été sélectionnées.

Démo:http://jsfiddle.net/Y4RZj

+0

Ups Je ne l'ai pas bien expliqué. Je veux supprimer toutes les valeurs de la liste déroulante si aucune valeur n'a été sélectionnée. J'ai une valeur vide, c'est la première et ensuite deux autres valeurs. Si la liste déroulante reste sur la valeur vide cela signifie que l'utilisateur n'a pas touché cela, et dans ce cas toutes les valeurs de cette liste déroulante doivent être supprimées et non incluses. Comprenez vous? Merci –

+0

Vérifiez mes modifications. :-) – MacMac