XicoXperto Posted May 19, 2012 at 11:32 PM Report #456916 Posted May 19, 2012 at 11:32 PM Boas malta, Alguém usa este plugin? Tive vários problemas com a interacção deste com o jqTransform, e ainda necessitei de fazer mais regras de validação, no entanto, estou com um problema, que é o seguinte: Tenho 2 inputs para datas, uma de inicio e outra de fim para fazer o dateRange é tão simples quanto: <input id="inicio" type="text" data-validation-engine="validate[dateRange[iDdateRange1]]" /> <input id="fim" data-validation-engine="validate[dateRange[iDdateRange1]]" /> O problema começa quando só inseri-mos o inicio, ele vai comparar os 2 campos e vê que não pode, então falha, porque está a espera do segundo campo. Então pensei em adicionar no "if" a condição que se o segundo não estivesse preenchido o primeiro validava apenas a formatação (DD-MM-AAAA). Mas isto vai alterar em todos, e não estou a ver como posso fazer para casos específicos (a não ser criar uma nova validação em que considera esse caso). Alguma ideia?
XicoXperto Posted May 21, 2012 at 02:24 AM Author Report #457069 Posted May 21, 2012 at 02:24 AM Consegui dar a volta. então é o seguinte, dentro da função _dateRange _dateRange: function (first, second, rules, i, options) { //are not both populated if ((!first[0].value && second[0].value) || (first[0].value && !second[0].value) // empty fields || (first.val() == first[0].defaultValue) || (second.val() == second[0].defaultValue) ) { // default value fields return ""; // only gives error if required } //are not both dates var dateReg = options.allrules['date'].regex; if (!methods._isDate( first[0].value , dateReg ) || !methods._isDate( second[0].value , dateReg )) { return ""; // Date format invalid (no message) for message add validation custom[date] } //are both dates but range is off if (!methods._dateCompare(first[0].value, second[0].value)) { return options.allrules[rules[i]].alertText2; // Date range invalid } }, Alterei para que não devolvessem mensagem de erro, sendo assim quando desse "erro" devolve "" (vazio). Para finalizar na função _validateField dentro do for existe a parte em que adiciona texto ao promptText e então alterei o teste do if para: if (errorMsg !== undefined && errorMsg != "" ) { promptText += errorMsg + "<br/>"; options.isError = true; } Assim posso especificar se pretendo "required" ou não. Obrigado de qualquer forma malta. 1 Report
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now