怎么实现在选中复选框的时候,再点击驳回审核按钮的时候,去判断退回原因是否填写

怎么实现在选中复选框的时候,再点击审核通过按钮的时候,去判断退回原因是否填写,按键里面的事件是下面这样写的,但是发现这样写的话,发现当选中复选框的时候就已经把退回原因的值读取出来了,因为退回原因一开始是空的,当输入原因的时候,还是读取的空值,所以输入了退回原因还是会审批通过。

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

var boxes = _g().getWidgetsByName("box");

//获取当前页的复选按钮控件数组

var cells = [];

if (typeof(boxes[0]) != "undefined") {

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

if (boxes[i].selected()) {

var cr=FR.cellStr2ColumnRow(boxes[i].options.location);

//读取复选框选中的行和列

     var J3value = contentPane.getWidgetByName("back").getText();

//读取退回原因控件的值  

     if(J3value.length !=0){

     alert("审批通过不需要填写退回理由");

     _g().setCellValue(9, cr.row, '');

     }

else if(J3value.length == 0){

  _g().setCellValue(8, cr.row, '审核通过');

}

}

}

}

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

1b10d1f967833c91f1157f82a2f5503.png

FineReport yzm216333 发布于 2021-9-15 17:52
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
yzm231847Lv3见习互助
发布于2021-9-17 09:06

var boxes = _g().getWidgetsByName("box");

var value = 2;

if (typeof(boxes[0]) != "undefined") {

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

if (boxes[i].getValue() == true) {

var ro = FR.cellStr2ColumnRow(boxes[i].options.location).row;

var col = 7;

var v1 = _g().getWidgetByCell(FR.columnRow2CellStr({

col: 8,

row: ro

})).getValue();

if (v1.length == 0) {

FR.Msg.alert("警告", "请填写原因");

} else {

_g().setCellValue(0, col, ro, value);

}

}

}

} else {

if (boxes.getValue() == true) {

var row = FR.cellStr2ColumnRow(boxes.options.location).row;

var col = 7;

var v1 = _g().getWidgetByCell(FR.columnRow2CellStr({

col: 8,

row: ro

})).getValue();

if (v1.length == 0) {

FR.Msg.alert("警告", "请填写原因");

} else {

_g().setCellValue(0, col, ro, value);

}

}

}

  • 2关注人数
  • 600浏览人数
  • 最后回答于:2021-9-17 09:06
    请选择关闭问题的原因
    确定 取消
    返回顶部