JS遍历给参数控件赋值

JS给扩展出来的单选控件遍历赋值一遍之后,在另一个单元格用公式输出单选控件的值。赋值之后单选控件的值并不能实时展示。

请问我的js代码哪里写错了....

stat是操作的的单选控件控件名,也是JS代码在的地方。status是扩展出来的的单选按钮控件名

js代码:

var status = _g().getWidgetByName("status");

var stat = _g().getWidgetByName("stat").getValue();

var arr = _g().getWidgetsByName("status");

if (arr[0] != undefined){

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

if(!stat){

arr[i].reset();

}else {

    arr[i].setValue(stat);

}

}

//如果控件长度大于1,则遍历获取所有控件并重新赋值

}else {

if(!stat){

status.reset();

}else {

    status.setValue(stat);

}

//如果控件长度为1,则直接赋值

}

yzm102242 发布于 2021-8-20 13:41 (编辑于 2021-8-20 14:34)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
shirokoLv6资深互助
发布于2021-8-20 13:44(编辑于 2021-8-20 13:59)

右边值是用公式联动的吧,公式联动只有编辑控件的时候才会动。。用js有可能跳过编辑控件直接赋值导致不触发了。

要么你就js再把右边也跑一遍全赋值。-

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

一定要JS吗?这样不行吗image.png

  • yzm102242 yzm102242(提问者) 模板不能动,右边的公式不能用JS,我也基本确定这一题考察的是JS,我看大佬们都用的是 jQuery 的 each 函数来遍历,这个函数还没用过,他是可以在赋值的时候把控件也编辑一遍么
    2021-08-20 13:57 
  • yzm102242 yzm102242(提问者) 不行,模板不能有改动,而且这样做的话,上面的按钮变成取消选中状态时,下面的不会跟着变
    2021-08-20 14:04 
  • shiroko shiroko 回复 yzm102242(提问者) 换成用单元格赋值把。测试一下这个就知道了_g().setCellValue(1,1,\'锁定\')
    2021-08-20 14:21 
  • yzm102242 yzm102242(提问者) 回复 shiroko 第一个参数和第二个参数代表什么
    2021-08-20 14:27 
  • shiroko shiroko 回复 yzm102242(提问者) 列号和行号,从零开始算,也就是第二列第二行
    2021-08-20 14:29 
最佳回答
0
snrtuemcLv8专家互助
发布于2021-8-20 13:45
  • 3关注人数
  • 1368浏览人数
  • 最后回答于:2021-8-20 14:34
    请选择关闭问题的原因
    确定 取消
    返回顶部