dodaję reguły poniżej do istniejącego skryptu jQuery sprawdzania poprawności przy użyciu extension
, ale ten fragment kodu powoduje, że łamią się i nie zatwierdzić w ogóle. Próbowałem każdej możliwej kombinacji przecinków przed i po, a także próbowałem użyć metody accept
z typami MIME, ale nic dotąd nie zadziałało. Jeśli skomentuję ten fragment (i komentarz na linii przed nim), kod działa idealnie, ale dodanie tego powoduje, że się zepsuje.jQuery Walidacja metody rozszerzenie nie pracuje
Here's a jsFiddle z kodem jak jest (nie działa), a here's one z dokładnie tego samego kodu z wyjątkiem fragmentu jest wykomentowane (działa poprawnie).
Fragment sama:
form1upload: {
extension: "jpg|jpeg|pdf|doc|docx|png"
}
pełny kod:
jQuery(document).ready(function() {
jQuery("#grantapp").validate({
errorClass:"errorlabels",
rules: {
form1name: "required",
form1building: "required",
form1position: "required",
form1phonex: "required",
form1besttime: "required",
form1projtitle: "required",
form1benefit: "required",
form1timeframe: "required",
form1relevance: "required",
form1description: "required",
form1amount: "required",
form1acceptchk: "required",
form1upload: {
extension: "jpg|jpeg|pdf|doc|docx|png"
}
},
messages: {
form1name: "You must enter your name.",
form1building: "You must enter your building.",
form1position: "You must enter your position.",
form1phonex: "You must enter your phone extension.",
form1besttime: "You must enter the best time to contact you.",
form1projtitle: "You must give your project a title.",
form1benefit: "You must enter the number of students who will benefit.",
form1timeframe: "You must enter a time frame for this project.",
form1relevance: "<br />You must state how this project is relevant to education.",
form1description: "<br />You must provide a description of your project.",
form1amount: "You must enter a requested amount.",
form1acceptchk: "<span style=\"position:relative;top:-10px;\">You must accept the terms.</span>",
form1upload: "You may not upload this type of file."
},
errorPlacement: function (error, element) {
if (element.attr("name") == "form1acceptchk") {
error.insertAfter("#tbl1");
} else {
error.insertAfter(element);
}
}
});
});
Składnia wygląda poprawna do mnie. –
Tak też myślałem. Sprawdziłem to wielokrotnie i dobrze mi wygląda. Sekcja specyficznych rozszerzeń również wygląda poprawnie, [zgodnie z dokumentami] (http://docs.jquery.com/Plugins/Validation/CustomMethods/extension#extension). – vaindil
Testowany z wieloma wersjami wtyczki i naprawdę wydaje się uszkodzony http://jsfiddle.net/ult_combo/4jMHZ/ –