J'essaie d'empêcher mon formulaire de se soumettre si une validation échoue. J'ai essayé de suivre cette procédure poste précédent mais ça ne marche pas pour moi. Qu'est-ce qui me manque ?
<input id="saveButton" type="submit" value="Save" />
<input id="cancelButton" type="button" value="Cancel" />
<script src="../../Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("form").submit(function (e) {
$.ajax({
url: '@Url.Action("HasJobInProgress", "ClientChoices")/',
data: { id: '@Model.ClientId' },
success: function (data) {
showMsg(data, e);
},
cache: false
});
});
});
$("#cancelButton").click(function () {
window.location = '@Url.Action("list", "default", new { clientId = Model.ClientId })';
});
$("[type=text]").focus(function () {
$(this).select();
});
function showMsg(hasCurrentJob, sender) {
if (hasCurrentJob == "True") {
alert("The current clients has a job in progress. No changes can be saved until current job completes");
if (sender != null) {
sender.preventDefault();
}
return false;
}
}
</script>
0 votes
Quelle fonction dans le code ci-dessus empêche le formulaire de se soumettre ? Que fait la fonction showMsg ? Pourquoi utilisez-vous sender.preventDefault() ; l'argument sender est-il un événement ? preventDefault() est utilisé pour arrêter le comportement normal d'un élément lors d'un événement comme un clic, etc.
0 votes
L'expéditeur se réfère à e : événement