jQuery Valider Nécessaire, Sélectionnez
Je suis en train de valider html sélectionner l'élément à l'aide de jQuery Valider plugin. J'ai mis "nécessaire de la règle du vrai, mais il passe toujours de validation, car le zéro de l'indice est choisi par défaut. Est-il possible de définir une valeur vide qui est utilisé par la règle?
UPD. Exemple. Imaginons que nous ayons le code html suivant de contrôle:
<select>
<option value="default">Choose...</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
Je veux Validation plugin pour utiliser la valeur "par défaut" comme vide.
- Mettre quelques extrait de code afin que nous puissions vous aider.
- double possible: stackoverflow.com/questions/1271640/jquery-validate-select-box
Vous devez vous connecter pour publier un commentaire.
Vous pouvez écrire votre propre règle!
$.validator.addMethod("valueNotEquals", function(value, element, arg){ return return arg != jQuery(element).find('option:selected').text(); }, "Value must not equal arg.");
Une solution plus facile a été expliqué ici:
Valider sélectionner la zone
La valeur est vide et ajouter l'attribut
il suffit de régler la valeur de la première option est la chaîne vide
value=""
et jquery de validation
obligatoire
règlewill work
utilisation min règle
ensemble de la première option de la valeur à 0
Vous avez seulement besoin de mettre
validate[required]
de la classe de ce de sélectionner et de mettre une option value=""par exemple:
Je ne sais pas comment est le plugin le temps, la question a été posée (2010), mais j'ai connu le même problème aujourd'hui et résolu de cette façon:
Donner votre balise select un nom d'attribut. Par exemple, dans ce cas
<select name="myselect">
Au lieu de travailler avec la valeur de l'attribut="valeur par défaut" dans la balise option, désactivez l'option par défaut ou définir la valeur="" comme suggéré par Andrew Manteaux
<option disabled="disabled">Choose...</option>
ou
<option value="">Choose...</option>
Définir le plugin règle de validation
$( "#YOUR_FORM_ID" ).validate({
rules: {
myselect: { required: true }
}
});
ou
<select name="myselect" class="required">
Obs: Andrew Coats solution ne fonctionne que si vous avez juste un select dans votre formulaire. Si vous voulez sa solution à travailler avec plus d'une sélectionnez ajouter un attribut de nom à votre sélection.
Espère que cela aide! 🙂
required
attribut à la<select>
tag et ajouterdisabled
attribut de la première<option>
balise (ou l'un avec l'selected
attribut si il y en a un)Ici est simple et compréhensible exemple :
JQuery :
La solution mentionnée par @JMP travaillé dans mon cas, avec un peu de modification:
J'utilise
element.value
au lieu devalue
dans leaddmethod
.Il pourrait être possible, que j'ai un cas particulier ici, mais il n'a pas à déterminer la cause. Mais @JMP est la solution de travail dans les affaires ordinaires.
sélectionnez la valeur sera vide
C'est simple, vous avez besoin pour obtenir le champ de sélection de valeur et il ne peut pas être "par défaut".
comment valider le "métiers et une modalité" il a 3 choisissez