移动端控件修改显示值后,需要再次点击一下控件,显示值才会刷新,请问有什么方法可以修改之后立即刷新

20230109_175312.zip

JS:

    var This_value = _g().getWidgetByName("p_dept").getValue() ; // 获取控件数据

    var arr_value = This_value.split(",") ; // 将获取到的数据转化为数组,然后判断数组长度

    var DS = 2 ;

    if(arr_value.length == DS){

        _g().getWidgetByName("p_dept").state.text = "all" ;

    }

ps:不能修改实际值,修改实际值会把这个实际值也带入到控件中。

FineReport 用户S5182147 发布于 2023-1-9 17:43 (编辑于 2023-1-9 17:54)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
free_zzLv6中级互助
发布于2023-1-10 10:54

var This_value = _g().getWidgetByName("p_dept").getValue() ; // 获取控件数据

var arr_value = This_value.split(",") ; // 将获取到的数据转化为数组,然后判断数组长度

var MyFunc = function () {

    return true ;

    // _g().getWidgetByName("p_dept").state.text = "all" ;

} ;

if(arr_value.length == DS && arr_value.length > 1){

    /*

    **模拟点击按钮事件

    */

    _g().getWidgetByName("p_dept").state.text = "all" ;

    var bot = document.getElementsByClassName("css-mbp0r r-1loqt21")[6] ;

    bot.addEventListener('touchstart', MyFunc)

    creatTouchstartEventAndDispatch(bot); 

    function creatTouchstartEventAndDispatch (el) { 

        var event = document.createEvent('Events');

        event.initEvent('touchstart', true, true); 

        el.dispatchEvent(event); 

    }

}

最佳回答
0
runnerLv7资深互助
发布于2023-1-9 18:16

控件改成编辑后事件呢

  • 用户S5182147 用户S5182147(提问者) 改成编辑后事件,会有两个问题,一是获取到的控件值一直是主页面中的下拉框控件值,与弹出来的下拉列表值无关;二是显示值修改事件无效,无论条件是否匹配
    2023-01-10 08:40 
  • 3关注人数
  • 515浏览人数
  • 最后回答于:2023-1-10 10:54
    请选择关闭问题的原因
    确定 取消
    返回顶部