如何用js代码给下拉复选框赋值?

是下拉“复选”框,不是下拉框,这两者的重大区别就是前者的值应该是一个数组,不能简单地用contentPane.getWidgetByName("下拉复选框名称").setValue(“XXX”)来实现。
我试过了,两个值及以上时先取出原来的值,再用+“,”+新值的形式拼接上去也是行不通的,这样它只会认为只有一个值:“VALUE1,VALUE2,....”,返回时无法识别为数组。
FineReporthakusun 发布于 2017-12-7 08:52
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共10回答
最佳回答
0
macro_hard发布于2017-12-7 08:52(编辑于 2023-9-6 09:34)
555
最佳回答
0
hakusun发布于2017-12-7 15:21(编辑于 2023-9-6 09:34)
555
最佳回答
0
hakusun发布于2017-12-7 17:57(编辑于 2023-9-6 09:34)
555
  • macro_hard macro_hard 控件返回值类型,在控件里面设置。
    你要的效果难道不是给单元格赋值以后,下拉复选框,复选框里对应的值处于选中状态么?
    回复
    2017-12-07 18:02 
  • hakusun hakusun(提问者) 回复 macro_hard :不是,我用它当作中转站,隐藏不显示的,当别的控件每选中一条记录,就把记录ID存在这个隐藏的下拉复选框(params)中,另有一个列表控件从这个中转站中取出数组当作数据字典的参数(...where in (\'${params}\')),当然经你提醒,我也在尝试直接用隐藏的单元格当中转站,目前这两种方法都没成功,我还在找原因。还有就是用JS全局变量设一个数组,那个问题也是你回答的,目前还没尝试。也许直接把选中的记录ID存入列表控件也是可行的,但是列表控件网上的资料很少,不清楚它的底层原理。
    回复
    2017-12-07 19:15 
  • hakusun hakusun(提问者) 回复 macro_hard :暂时搞定了,...where in(\'${params}\') 中把参数两头的单引号去掉就行了,因为参数本来就是INT类型不需要单引号。换成字符类的话我想应该在赋值的时候就添加单引号,然后在数据集SQL中where子句的参数部分仍然不加引号。
    回复
    2017-12-07 20:21 
  • hakusun hakusun(提问者) 回复 macro_hard :试过了,如果是字符类型确实可以在赋值时预先加引号,然后SQL里的参数${params}不加引号,因为里面返回的就是以字符串形式用指定分隔符表示的数组。
    回复
    2017-12-07 20:26 
  • macro_hard macro_hard 回复 hakusun :就是字符串拼接,最后得到的SQL语句符合语法就行
    回复
    2017-12-07 20:33 
最佳回答
0
hakusun发布于2017-12-7 18:00(编辑于 2023-9-6 09:34)
555
  • 0关注人数
  • 491浏览人数
  • 最后回答于:2017-12-7 20:34
    活动推荐 更多
    热门课程 更多
    返回顶部