编辑结束后事件
// 获取需要禁用的控件(单选框/下拉框)
var targetWidget = this.options.form.getWidgetByName("控件名称");
// 根据当前值禁用目标
if (this.getValue() != "") {
targetWidget.setEnable(false); // 非空则禁用
} else {
targetWidget.setEnable(true); // 为空启用
}
JS控制单元格控件是否可用/可见 https://help.fanruan.com/finereport/doc-view-4055.html
var value = this.getValue(); //获取当前控件值 var ro = FR.cellStr2ColumnRow(this.options.location).row; //获取当前行号 var widget = _g().getWidgetByCell(FR.columnRow2CellStr({ col: 2, row: ro })); //获取当前行的单价控件 value == "是" ? _g().setCellValue(0, 2, ro, "") : true; //如果中止为是则清除当前行的单价 value == "是" ? widget.setEnable(false) : widget.setEnable(true); //如果中止为是则禁用当前行的单价控件
选中需要控制的单选框所在单元格
添加条件属性,设置触发条件为下拉框的特定值
在条件属性中取消勾选「可用」选项
效果如下图所示:
给下拉框控件添加编辑后事件:
// 获取单选框控件对象var radio = this.options.form.getWidgetByName("单选框控件名称");// 根据下拉框值设置可用状态if (this.getValue() == "特定值") {radio.setEnable(false); // 禁用} else {radio.setEnable(true); // 启用}
方案一适用于静态条件控制,设置简单
方案二适用于需要动态逻辑判断的场景
两种方案都支持移动端使用
如需更复杂的交互控制,可以参考中的联动实现方法。