AEM5.6 |选择对话框的所有实现

AEM5.6 |选择对话框的所有实现,aem,Aem,我正在尝试实现组件对话框中的全选复选框。 选中/取消选中全选复选框时,应选中所有其他复选框;取消选中/取消选中全选复选框时,应取消选中所有其他复选框 我编写的侦听器代码是 function() { var type = this.getValue(); var flag = true; if(type==''){ flag = false; } if(!flag){ this.findParentByType('

我正在尝试实现组件对话框中的全选复选框。 选中/取消选中全选复选框时,应选中所有其他复选框;取消选中/取消选中全选复选框时,应取消选中所有其他复选框

我编写的侦听器代码是

function()
{   
    var type = this.getValue();
    var flag = true;


    if(type==''){
        flag = false;
    }
    if(!flag){
        this.findParentByType('dialog').getField('./pricingVividBlack').defaultValue = false;
    }
    else{
        this.findParentByType('dialog').getField('./pricingVividBlack').defaultValue = true;
    }

}

请帮助我更正代码以实现该功能。

根据您的对话框结构,有许多方法可以实现此功能

如果tabpanel/panel只包含上述复选框,并且选择/取消选择应该启用/禁用所有复选框,那么下面的代码应该可以做到这一点

function(field, val, isChecked) {
    var panel = field.findParentByType('panel');
    var selections = panel.findByType('selection');

    if (isChecked) {
        CQ.Ext.each(selections, function() {
            if (this.isCheckbox) {
            this.setValue(true);
            }
        });
    } else {
        CQ.Ext.each(selections, function() {
            if (this.isCheckbox) {
            this.setValue(false);
            }
        });
    }
}
或者,您可以设置一个额外属性,以仅标识需要此行为的字段,并且可以使用该属性使用上述代码标识这些字段,并相应地启用或禁用它们


要了解更多信息,请参阅

根据您的对话框结构,有许多方法可以实现这一点

如果tabpanel/panel只包含上述复选框,并且选择/取消选择应该启用/禁用所有复选框,那么下面的代码应该可以做到这一点

function(field, val, isChecked) {
    var panel = field.findParentByType('panel');
    var selections = panel.findByType('selection');

    if (isChecked) {
        CQ.Ext.each(selections, function() {
            if (this.isCheckbox) {
            this.setValue(true);
            }
        });
    } else {
        CQ.Ext.each(selections, function() {
            if (this.isCheckbox) {
            this.setValue(false);
            }
        });
    }
}
或者,您可以设置一个额外属性,以仅标识需要此行为的字段,并且可以使用该属性使用上述代码标识这些字段,并相应地启用或禁用它们

有关更多了解,请参阅