CQ / AEM的功能类似于' cq5forms_showMgs()'定义?

时间:2016-01-18 23:16:05

标签: javascript cq5 aem web-component sling

我注意到CQ偶尔会使用这些javascript cq5forms 函数和变量。我想知道它们的定义以及它们的工作方式。

具体来说,我想知道 cq5forms_isEmpty()的定义位置。我试图让内置的客户端验证工作,但JavaScript控制台不断给出一个引用错误,指出 cq5forms_isEmpty()未定义。

这些 cq5forms 函数的其他一些示例包括 clientvalidation.jsp 中的 cq5forms_showMgs()函数,用于内置密码约束:

...
if(last!=confirm) {
            cq5forms_showMsg(<%
                %>'<%= xssAPI.encodeForJSString(formId) %>',<%
                %>'<%= xssAPI.encodeForJSString(name) %>_confirm',<%
                %>'<%= xssAPI.encodeForJSString(ValidationHelper.getConstraintMessage(resource)) %>');
            return false; 
    }
...

cq5forms_isArray() cq5forms_regcheck()在FieldHelper.java中被写出:

    public static void writeClientRegexpText(...)
        ...
        out.write(id);
        out.write(";" +
                  "if ( cq5forms_isArray(obj)) { \n" +
                  "for(i=0;i<obj.length;i++) { \n" +
                  "if (!cq5forms_regcheck(obj[i].value, ");
        out.write(regexp);

        out.write(")) { \n" +"cq5forms_showMsg('");
        ...

如果有人能指出这些定义的地方以及如何使用它们将非常感激。

1 个答案:

答案 0 :(得分:3)

此javascript函数属于cq.forms clientlibrary。 您可以在crx中的以下位置找到js代码 /etc/clientlibs/foundation/form/form.js