web-dev-qa-db-fra.com

jQuery add requis pour la saisie des champs

Je cherchais des moyens de rendre l'écriture automatique requise de jQuery à l'aide de la validation html5 dans tous mes champs de saisie, mais je ne parviens pas à lui dire où l'écrire.

Je veux prendre ça

 <input type="text" name="first_name" value="" id="freeform_first_name"
 maxlength="150">

et l'ajouter automatiquement obligatoire avant la balise de fermeture

 <input type="text" name="first_name" value="" id="freeform_first_name"
 maxlength="150" required>

Je pensais pouvoir faire quelque chose comme

$("input").attr("required", "true");

Mais ça ne marche pas. Toute aide est grandement appréciée.

134
Miura-shi
$("input").prop('required',true);

DEMO FIDDLE

337
Unknown

Vous pouvez le faire en utilisant attr, l’erreur que vous avez commise est de mettre les vraies citations intérieures. au lieu de cela essayez ceci:

$("input").attr("required", true);
42
Joz Naveen Joz

J'ai constaté que les implémentations suivantes sont efficaces:

$('#freeform_first_name').removeAttr('required');

$('#freeform_first_name').attr('required', 'required');

Ces commandes (attr, removeAttr, prop) se comportent différemment selon la version de JQuery que vous utilisez. Veuillez faire référence à la documentation ici: https://api.jquery.com/attr/

22
John Meyer

Utilisation de la méthode .attr

.attr(attribute,value); // syntax

.attr("required", true);
// required="required"

.attr("required", false);
// 

Utiliser .prop

.prop(property,value) // syntax

.prop("required", true);
// required=""

.prop("required", false);
//

Lire plus d'ici

https://stackoverflow.com/a/5876747/541328

4
TheHive

Ne devrait pas inclure true avec guillemet double "" ce devrait être comme

$(document).ready(function() {            
   $('input').attr('required', true);   
});

Aussi, vous pouvez utiliser prop

jQuery(document).ready(function() {            
   $('input').prop('required', true);   
}); 

Au lieu de true vous pouvez essayer requis. Tel que

$('input').prop('required', 'required');
4
Rokan Nashp

J'ai trouvé que jQuery 1.11.1 ne le fait pas de manière fiable.

J'ai utilisé $('#estimate').attr('required', true) et $('#estimate').removeAttr('required').

Supprimer required n'était pas fiable. Cela laisserait parfois l'attribut required sans valeur. Puisque required est un attribut booléen, sa simple présence, sans valeur, est considérée par le navigateur comme true.

Ce bug était intermittent, et j'en ai eu marre de le jouer. Commuté sur document.getElementById("estimate").required = true et document.getElementById("estimate").required = false.

3
Doris Gammenthaler