Je travaille sur un projet et j'ai remarqué que bootstrap 4.0.0 beta n'utilise plus de glyphicons, alors comment pourrais-je obtenir le même effet que le 2ème exemple "En utilisant les icônes de commentaires "montré dans le lien ici JQuery-validation and Bootstrap en utilisant font-awesome 4.7.0? J'ai inclus la sortie de la validation ci-dessous pour plus de clarté:Utilisation de la validation de jquery 1.17.0 avec Bootstrap 4.0.0 beta
Actuellement ce que j'ai:
HTML
<div class="form-group">
<label class="col-sm-4 control-label df-label" for="first_name">* First name:</label>
<div class="col-sm-5">
<input type="text" class="form-control" id="first_name" name="first_name" placeholder="First Name" />
</div>
</div>
<div class="form-group">
<label class="col-sm-5 control-label df-label" for="last_name">* Last name:</label>
<div class="col-sm-5">
<input type="text" class="form-control" id="last_name" name="last_name" placeholder="Last Name" />
</div>
</div>
....
<div class="form-group">
<div class="col-sm-12">
<button type="submit" class="btn btn-outline-success my-2 my-sm-0" id="send" name="send" value="Send">Send</button>
</div>
</div>
CSS
.has-danger .control-label,
.has-danger .help-block,
.has-danger .form-control-feedback {
color: #d9534f;
}
jQuery
$("#contact-form").validate({
rules: {
first_name: "required"
,last_name: "required"
,email: {
required: true
,email: true
}
,message: {
required: true
,minlength: 10
}
}
,messages: {
first_name: "Please enter your First name"
,last_name: "Please enter your Last name"
,email: "Please enter a valid Email address"
,message: {
required: "Please enter a Message"
,minlength: "Your message must consist of at least 10 characters"
}
}
,meta: "validate"
,errorElement: "em",
errorPlacement: function (error, element) {
// Add the `help-block` class to the error element
error.addClass("help-block");
// Add `has-feedback` class to the parent div.form-group
// in order to add icons to inputs
element.parents(".col-sm-5").addClass("has-feedback");
element.parents(".col-sm-8").addClass("has-feedback");
if (element.prop("type") === "checkbox") {
error.insertAfter(element.parent("label"));
} else {
error.insertAfter(element);
}
// Add the span element, if doesn't exists, and apply the icon classes to it.
if (!element.next("span")[ 0 ]) {
$("<span class='fa fa-times form-control-feedback'></span>").insertAfter(element);
}
},
success: function (label, element) {
// Add the span element, if doesn't exists, and apply the icon classes to it.
if (!$(element).next("span")[ 0 ]) {
$("<span class='fa fa-check form-control-feedback'></span>").insertAfter($(element));
}
},
highlight: function (element, errorClass, validClass) {
$(element).parents(".col-sm-5").addClass("has-danger").removeClass("has-success");
$(element).parents(".col-sm-8").addClass("has-danger").removeClass("has-success");
$(element).next("span").addClass("fa-times").removeClass("fa-check");
},
unhighlight: function (element, errorClass, validClass) {
$(element).parents(".col-sm-5").addClass("has-success").removeClass("has-danger");
$(element).parents(".col-sm-8").addClass("has-success").removeClass("has-danger");
$(element).next("span").addClass("fa-check").removeClass("fa-times");
}
});
Et voici ma sortie jusqu'à présent:
Howzit @ user2030404 merci beaucoup pour votre réponse, je ne l'ai pas encore essayé mais votre estimation est sur place donc je suis assez confiant que votre solution fonctionnera. Je vais y aller un peu plus tard et vous laisser savoir quel est le résultat. Merci encore et bien. –