js报错

var radioValue = contentPane.getWidgetByName("通过").getValue();

// 获取不同名称的控件集合

var controls1 = contentPane.getWidgetsByName("t1");

var controls2 = contentPane.getWidgetsByName("t2");

var controls3 = contentPane.getWidgetsByName("t3");

var controls4 = contentPane.getWidgetsByName("t4");

// 遍历控件集合

for (var i = 0; i < controls1.length; i++) {

    controls1[i].setEnabled(radioValue);

}

for (var i = 0; i < controls2.length; i++) {

    controls2[i].setEnabled(radioValue);

}

for (var i = 0; i < controls3.length; i++) {

    controls2[i].setEnabled(radioValue);

}

for (var i = 0; i < controls4.length; i++) {

    controls2[i].setEnabled(radioValue);

}

想要通过单选按钮让所有控件不可用但是报错:自定义JS错误 : Cannot read properties of undefined (reading 'getValue')

FineReport nesy 发布于 2025-4-9 07:53
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
华莉星宸Lv7资深互助
发布于2025-4-9 08:18

contentPane.getWidgetByName改成下面试试

this.options.form.getWidgetByName("控件名").getValue();

或是

_g().getWidgetByName("控件名").getValue(); 

或是

contentPane.parameterEl.getWidgetByName("控件名").getValue();

--------------------

JS代码还可以加个延时

加个延时

setTimeout(function() {

你的JS代码;

}, 500);

  • nesy nesy(提问者) 都不行
    2025-04-09 08:31 
  • 华莉星宸 华莉星宸 回复 nesy(提问者) 你的“通过”控件是在什么地方?你的js写在哪里的?
    2025-04-09 08:40 
  • nesy nesy(提问者) 回复 华莉星宸 C10, 第一行var radioValue = contentPane.getWidgetByName("通过").getValue();不是直接获取单选按钮值“通过”吗


    2025-04-09 09:13 
  • 华莉星宸 华莉星宸 回复 nesy(提问者) 你的js是写在单选按钮编辑后事件吧
    直接var radioValue = this.getValue();
    2025-04-09 09:16 
  • nesy nesy(提问者) 回复 华莉星宸 那还需要每个单元格都设置条件判断吧?
    2025-04-09 09:29 
  • 2关注人数
  • 35浏览人数
  • 最后回答于:2025-4-9 08:18
    请选择关闭问题的原因
    确定 取消
    返回顶部