Javascript 如何将SuiteRM的必填字段转换为可选字段?

Javascript 如何将SuiteRM的必填字段转换为可选字段?,javascript,php,sugarcrm,suitecrm,Javascript,Php,Sugarcrm,Suitecrm,我有一个字段-a(下拉列表)和一个字段-B(文本字段),根据字段-a的值,字段-B变为可选或不可选,例如: 如果字段-A的值为1;然后字段B变成必需的,为此,我使用SuiteCRM带来的JS函数:addToValidate 但是如果字段-A的值为0,我应该将字段-B转换为可选 在最后一个案例中,我可以使用SuiteRM的什么JS功能 谢谢如果要动态更改字段是否为必填字段,请查看 它们允许您根据自定义Sugar逻辑公式的值自动切换给定目标字段的所需状态(真/假) 根据链接的示例和您的示例,它看起来

我有一个字段-a(下拉列表)和一个字段-B(文本字段),根据字段-a的值,字段-B变为可选或不可选,例如:

如果字段-A的值为1;然后字段B变成必需的,为此,我使用SuiteCRM带来的JS函数:addToValidate

但是如果字段-A的值为0,我应该将字段-B转换为可选

在最后一个案例中,我可以使用SuiteRM的什么JS功能


谢谢

如果要动态更改字段是否为必填字段,请查看

它们允许您根据自定义Sugar逻辑公式的值自动切换给定目标字段的所需状态(真/假)

根据链接的示例和您的示例,它看起来是这样的:

/custom/Extension/modules//Ext/Dependencies/fieldB_required.php

<?php
    $dependencies['<module>']['fieldB_required'] = array(
        'hooks' => array("edit"),
        //Trigger formula for the dependency. Defaults to 'true'.
        'trigger' => 'true',
        'triggerFields' => array('fieldA'),
        'onload' => true,
        //Actions is a list of actions to fire when the trigger is true
        'actions' => array(
            array(
                'name' => 'SetRequired', //Action type
                //The parameters passed in depend on the action type
                'params' => array(
                    'target' => 'fieldB',
                    'label'  => '<field label>', //normally <field>_label
                    'value' => 'equal($fieldA, 1)', //Formula
                ),
            ),
        ),
    );

您是否对直接的Javascript答案感兴趣,还是出于其他原因需要调用“addToValidate”方法?似乎您只需使用普通的旧Javascript添加/删除/切换类就可以做到这一点。首先尝试通过Jquery添加或删除属性“required”,但在保存表单时,它无法识别该属性,并让空字段通过(在需要时),你还建议用JS做什么?你绝对需要用addToValidate吗?还有其他方法可以实现条件必填字段,但它们不是通过JS实现的