原本呢,问题比较简单,只是今天和同事两个人因为种种原因对于这个问题理解不同,所以吵得面红耳赤(夸张手法),所以就记下来了。
问题描述:从页面勾选多条记录并存进数组,判断如果其中有一条数据的定制推送时间(定制推送时间为对象的一个属性)不为空,则执行代码1,若数组中所有数据的定制推送时间都为空,执行代码2.
解决:
方法一:
1.首先获取数组,
var records = Horn.getComp('taskGrid').getSelecteds(); //数组
var flag = 1; //初始值为1,代表数组中所有对象的定制推送时间都为空
2.循环数组判断
for (var i = 0; i < records.length; i++) {
if(records[i].customPushDate != null){ //<span style="color: rgb(255, 102, 102);">不为空</span>,则执行代码1
##//提示当前推送任务中包含已定制的任务
Horn.Msg.confirm("确认","选中推送任务中包含手动推送任务,是否清除手动推送?",function(){
#doMask({"msg":"正在推送中,请稍候......"});
$ .post("${appServer}/sse/stock/restfulTaskManualPush/pushData.json", submitParams,function(data) {
#doUnMask();
if(data.success==1){
Horn.Msg.alert("提示","推送成功",function(){formQuery();});
}else{
Horn.Msg.error("提示",data.errorInfo);
}
}, "json");
},function(){
return;
})
flag++; //若执行代码1,则给出标识,不能执行代码2,flag不等于1
}
}
</pre>3.判断flag==1时,执行代码2<p></p><p></p><pre name="code" class="html">if(flag==1){
Horn.Msg.confirm("确认","确认推送这"+records.length+"条任务吗?",function(){
#doMask({"msg":"正在推送中,请稍候......"});
$ .post("${appServer}/sse/stock/restfulTaskManualPush/pushData.json", submitParams,function(data) {
#doUnMask();
if(data.success==1){
Horn.Msg.alert("提示","推送成功",function(){formQuery();});
}else{
Horn.Msg.error("提示",data.errorInfo);
}
}, "json");
},function(){
return;
})
}
方法二:
1,同样先获取数组
var records = Horn.getComp('taskGrid').getSelecteds(); //数组
2 定义boolean值,循环数组判断,如果数组中有一条数据的定制推送时间不为空,执行代码1
var flag = flase;
var records = Horn.getComp('taskGrid').getSelecteds();
for (var i = 0; i < records.length; i++) {
if(records[i].customPushDate != null){
flag=true;
}
}
3和方法一相同
if(flag==flase){
Horn.Msg.confirm("确认","确认推送这"+records.length+"条任务吗?",function(){
#doMask({"msg":"正在推送中,请稍候......"});
$ .post("${appServer}/sse/stock/restfulTaskManualPush/pushData.json", submitParams,function(data) {
#doUnMask();
if(data.success==1){
Horn.Msg.alert("提示","推送成功",function(){formQuery();});
}else{
Horn.Msg.error("提示",data.errorInfo);
}
}, "json");
},function(){
return;
})
}