Prévenir modal bootstrap à partir de la clôture, cliquez sur le bouton soumettre
J'ai un bootstrap modal. Lorsque l'utilisateur clique sur le bouton "Update", il fait un appel ajax pour mettre à jour la DB. Toutefois, si la mise à jour échoue pour une raison quelconque, je veux afficher le message d'erreur et quitter le modal ouvrir.
Tout semble fonctionner dans l'ordre je pense, cependant, le e.preventDefault()
ne semble pas arrêter le modal de la clôture.
Pourquoi le preventDefault()
de ne pas s'arrêter sur le bouton soumettre?
Mon bouton:
<button type="submit" class="btn btn-success" id="btnUpdate" style="margin-right:10px">Update</button>
Javascript cliquez sur le bouton code.
$("#btnUpdate").on("click", function (e) {
//reset the message...
$("#errorMessage").html("");
//get the value...
var myParam = $("#someSelection").attr("someData");
var myParamData = JSON.parse(myParam );
updateData(myParamData.Name)
.done(function (result) {
if (!result.d == "") {
$("#errorMessage").html(result.d);
e.preventDefault();
}
else {
loadData();
}
});
});
OriginalL'auteur John Doe | 2016-01-31
Vous devez vous connecter pour publier un commentaire.
Il suffit de changer le type de bouton pour
button
va empêcher la soumission :Espère que cette aide.
Mise à jour :
Pour le bénéfice de la validation HTML5 lorsque vous utilisez submition par ajax vous pouvez utiliser checkValidity() méthode.
De sorte que votre code sera :
Oui, vous pouvez, le contrôle de ma mise à jour s'il vous plaît.
Je vois ce que vous obtenez, en revanche ne fonctionne pas pour moi. Je pense avoir une faille dans ma mater de la page. J'ai <form runat=server> et aucun de mes bootstrap des modaux sont rendu le <form> tag lorsque j'examine le code html.
OriginalL'auteur Zakaria Acharki
e.preventDefault()
est appelée à partir d'une fonction de rappel deupdateData
méthode, il est tout à fait possible que l'événement est terminé avant de callback est appelée.Essayez de placer
e.preventDefault()
avant d'appelerupdateData
méthode.Espère que cette aide
OriginalL'auteur hemanth