zheng 发表于 2022-3-29 17:12:55

表单的afterProcess事件

本帖最后由 zheng 于 2022-3-29 17:21 编辑

表单的afterProcess事件中无法使用datatable的resetData()和deleteLine(),这两个方法都不能清空数据,但beforeProcess事件可以清空,这是为什么呢?


我在afterProcess事件中的代码:
let routeName = this.target.app.currentTask.routeName;
debugger
if(routeName === '退回'){
    //删除添加的数据
    let length = this.form.get("datatableinfoshow").getData().data.length;
    for(let i = 0;i<length;i++){
      this.form.get("datatableinfoshow").deleteLine(0);
    }
    // this.form.get('datatableinfoshow').resetData();
}
就是如果选了退回决策,就清空datatable,但是我在debugger的时候确实能看到数据被一行一行的删掉了,但打开退回的那个人的待办发现数据并没有清除


论坛管理员 发表于 2022-3-30 10:32:15

您好,afterprocess事件是不会对data进行保存的,所以您这里是修改了,但是并没有保存到data里

zheng 发表于 2022-3-30 10:41:55

本帖最后由 zheng 于 2022-3-30 10:43 编辑

论坛管理员 发表于 2022-3-30 10:32
您好,afterprocess事件是不会对data进行保存的,所以您这里是修改了,但是并没有保存到data里 ...
那请问有什么方法可以在选择指定决策的时候去清空datatable?beforeProcess事件貌似获取不到选择的决策

论坛管理员 发表于 2022-3-31 09:55:55

表单属性区域,有一个提交,里面有校验路由的事件,里面可以做。但是最终需要有return,因为是校验,最终要给出校验是否通过

zheng 发表于 2022-4-13 17:06:08

本帖最后由 zheng 于 2022-4-13 17:21 编辑

论坛管理员 发表于 2022-3-31 09:55
表单属性区域,有一个提交,里面有校验路由的事件,里面可以做。但是最终需要有return,因为是校验,最终要 ...
我在校验路由里需要用ajax调接口,并在接口的回调中return,但这样貌似无法return,在回调里return并不能正常流转,请问该怎么解决
}else if(routeName === '保存'){
    this.data.add("job",this.data.$work.job);

      // o2.load("/o2_lib/jquery/jquery.min.js",function(){
      //   if(!window.jq){
      //         var jq = jQuery.noConflict(true); //避免js框架冲突
      //         window.jq = jq;
      //   }
      //   var this_data = this.data;
      //   var this_form = this.form;
            // window.jq.ajax({
            //   url:"",
            //   type:"post",
            //   contentType: "application/json;charset=UTF-8",
            //   data:JSON.stringify(this_data),
            //   // async:false,
            //   success(json){
            //         resolve(json);
            //         this_form.notice("保存成功!","success");
                        return true
            //   },
            //   error(json){
            //         reject(json)
            //         this_form.notice(json,"error");
                     return false
            //   }
            // })
      // }.bind(this))


    })



页: [1]
查看完整版本: 表单的afterProcess事件