如果val length为0,则AUI自定义验证不起作用

时间:2017-12-05 21:14:05

标签: validation liferay liferay-aui

我正在尝试有条件地要求领域,我尝试了这个:

    <aui:validator name="custom" errorMessage="custom">
function (val, fieldNode, ruleValue) {
     var cond = document.getElementById("something").value;
    if(val.length == 0 && cond == "something") {
        return false;
    } else {
        return true;
    }
}

但问题是,只有当我在文本字段中输入内容时,长度为0才会出现此函数。

这是有效的:

 <aui:validator name="required">
           function (val, fieldNode, ruleValue) {
     var cond = document.getElementById("something").value;
    if(val.length == 0 && cond == "something") {
        return true;
    } else {
        return false;
    }
}
    </aui:validator>

但是我需要标签。

如果长度为0,我如何触发自定义验证?

1 个答案:

答案 0 :(得分:0)

有关liferay aui验证的详细信息,您可以关注this tutorial

我试过这个,以下代码对我来说很好用:

<aui:form name="fm2" action="" method="post">
<aui:input name="age" value='' label="Age">
    <aui:validator  name="custom"  errorMessage="You must have 18 years or more" >
    function (val, fieldNode, ruleValue) {
    var result = false;
    if (val >=18) {
    result = true;
    }
    return result;
    }
    </aui:validator>
    <aui:validator name="required" />
</aui:input>
<aui:button type="submit" name="save" value="Save" />