Je souhaite supprimer la fenêtre contextuelle "remplissez ce champ", car la validation et les validations normales déclarées doivent s'afficher.
Html:
<div class="panel-body">
<form role="form" id="createForm" v name="createForm" ng-submit="createAdminGroup(adminGroupData)">
<div class="form-group" ng-class="{ 'has-error' : createForm.firstName.$invalid && !createForm.firstName.$pristine}">
<label class="label1">First Name</label>
<input name="firstName" id="firstName" class="form-control" placeholder="First Name" name="firstName" type="text" ng-model="adminGroupData.firstName " required/>
<span style="color:red" ng-show="createForm.firstName.$invalid && !createForm.firstName.$pristine">Please enter first name</span>
</div>
<div class="form-group">
<label class="label1">Last Name </label>
<input name="lastName" id="lastName" class="form-control" placeholder="Last Name" name="lastNmae" type="text" ng-model="adminGroupData.lastName" />
</div>
<div class="form-group">
<label class="label1"> Email Id </label>
<input type="email" name="email" id="email" class="form-control" placeholder="[email protected]" value=""ng-model="adminGroupData.email"/>
</div>
<div class="form-group">
<label class="label1"> Password </label>
<input name="password" id="password" class="form-control" placeholder="password" value="" ng-model="adminGroupData.password" />
</div>
<button name="submit" type="submit" class="btn btn-success" id="" ng-disabled="userForm.$invalid">Save</button>
<button class="btn btn-default" id="cancel" type="button" onclick='handleCancelCreateAdmin()'> Back </button>
</form>
</div>
Ajoutez l'attribut novalidate
à votre form
pour désactiver la validation par défaut de browser
Pour Ex
<form role="form" novalidate id="createForm" v name="createForm" ng-submit="createAdminGroup(adminGroupData)">
Ajoutez l'attribut formnovalidate à l'intérieur du bouton d'envoi:
Exemple:
<button name="submit" type="submit" formnovalidate class="btn btn-success">Save</button>
Cela désactivera uniquement la validation du formulaire du navigateur. Vous avez toujours la validation de votre code AngularJS.
Vous pouvez voir la spécification W3C ici
J'ai eu le même problème il y a quelques jours et c'est comme ça que j'ai réussi à résoudre
Je viens d'essayer cela et cela a fonctionné:
oninvalid = "this.setCustomValidity ('')" oninput = "this.setCustomValidity ('')">
J'ai ajouté un espace entre les deux guillemets simples.
Depuis que j'ai ajouté une info-bulle d'amorçage sur mes champs de saisie et requis, l'entrée non valide arrive à se concentrer et affiche la valeur de l'info-bulle.
C'était plus simple que je ne le pensais.