J'ai la case à cocher suivante: et le champ de texte d'entrée suivant: p> Ceci est mon code de validation JS: $("#franchiseForm").validate({
rules: {
mimeType: {
required: $("#startClientFromWeb").is(":checked")
}
}
});
3 Réponses :
Validation ne sera pas triger si l'entrée est désactivée code>. Vous pouvez utiliser ce fait - Laissez la textbox être requis, mais initialement désactivé et l'active que lorsque la case à cocher est cochée. $(function () {
$('#startClientFromWeb').change(function () {
if ($(this).is(':checked')) {
$('#mimeType').removeAttr('disabled');
}
else {
$('#mimeType').attr('disabled', 'disabled');
}
});
});
Je n'ai pas désactivé l'entrée #mimeType.
Vous pouvez ajouter vos propres méthodes de validation personnalisées pour gérer des choses comme ceci:
$.validator.addMethod("requiredIfChecked", function (val, ele, arg) {
if ($("#startClientFromWeb").is(":checked") && ($.trim(val) == '')) { return false; }
return true;
}, "This field is required if startClientFromWeb is checked...");
$("#franchiseForm").validate({
rules: {
mimeType: { requiredIfChecked: true }
}
});
J'ai essayé votre code. Cela me donne l'erreur suivante: "Attendu:" Pour cette ligne: MIMETYPE: {OffreFiChecked} Pouvez-vous donner l'exemple dans le violon?
Merci! Le problème était que j'applique les validations sur $ (document) .Ready et la valeur de la case à cocher est toujours fausse. Maintenant, j'applique les validations après l'appel de Ko.applyBindings et cela fonctionne comme prévu. Quoi qu'il en soit, merci de votre aide.
Règles: {MIMETYPE: {REQUIS: "# STARTCLIGHTFROMWeb: coché"}}, Messages: {MIMETYPE: {REQUIS: "Répétition vérifiée, à ce jour"}}} CODE> P>