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>