اضافة Tooltips في التحقق من صحة النموذج Form Validation
-
بنحكي في هذا الدرس عن اضافة Tooltips في Validation، وهي عرض الرسائل بخلفية اخضر اذا كانت الامور تمام. وخلفية احمر اذا كان في مشكلة.
نطبق المثال التالي حتى نفهم الفكره.
<!DOCTYPE html> <html lang="en"> <head> <title>Bootstrap Example</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script> </head> <body> <div class="container mt-5"> <form class="row g-3 needs-validation" novalidate> <div class="col-md-6"> <label for="" class="form-label">First name</label> <div class="input-group has-validation"> <input type="text" class="form-control" id="validationCustom01" value="Layan" required> <div class=" "> Looks good! </div> </div> </div> <div class="col-md-6"> <label for="validationCustom02" class="form-label">Last name</label> <div class="input-group has-validation"> <input type="text" class="form-control" id="validationCustom02" value="" required> <div class="invalid-tooltip"> Please add Last name. </div> </div> </div> <div class="col-md-6"> <label for="validationCustom04" class="form-label">Gender</label> <div class="input-group has-validation"> <select class="form-select" id="validationCustom04" required> <option selected disabled value="">Choose...</option> <option>Male</option> <option>Female</option> </select> <div class="invalid-tooltip"> Please select a gender. </div> </div> </div> <div class="col-md-6"> <label for="validationCustomUsername" class="form-label">Username</label> <div class="input-group has-validation"> <span class="input-group-text" id="inputGroupPrepend">@</span> <input type="text" class="form-control" id="validationCustomUsername" aria-describedby="inputGroupPrepend" required> <div class="invalid-tooltip"> Please choose a username. </div> </div> </div> <div class="col-12"> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="invalidCheck" required> <label class="form-check-label" for="invalidCheck"> Agree to terms and conditions </label> <div class="invalid-tooltip"> You must agree before submitting. </div> </div> </div> <div class="col-12"> <button class="btn btn-primary" type="submit">Submit form</button> </div> </form> </div> <script> // Example starter JavaScript for disabling form submissions if there are invalid fields (function () { 'use strict' // Fetch all the forms we want to apply custom Bootstrap validation styles to var forms = document.querySelectorAll('.needs-validation') // Loop over them and prevent submission Array.prototype.slice.call(forms) .forEach(function (form) { form.addEventListener('submit', function (event) { if (!form.checkValidity()) { event.preventDefault() event.stopPropagation() } form.classList.add('was-validated') }, false) }) })() </script> </body> </html>
النتيجة:
لتطبيق هاذ الحكي بنستخدم classes التالية:
valid-tooltip : اذا ما كان في مشاكل بتم عرض الرسالة بخلفية اخضر.
invalid-tooltip : اذا كان في مشكلة بتم عرض الرسالة بخلفية احمر.
واضفنا هذا control داخل <div> وطبقنا عليه class باسم input-group has-validation
اترك تعليقك