我有一个绑定到数据源的表,这是一个生产计划模型。我在每一行上添加了一个按钮,用于在单击时将生产计划项目发送到生产中。请注意,我有两个布尔字段,指示项目是在计划中还是发送到生产。连接到表的数据源具有此查询构建器表达式,仅显示计划的生产线:String[] lines;
String[] find;
int ifind=0;
boolean found =false;
lines = loadStrings("http://localhost:5000/get.js?id=5858&drop=FEUP");
for (int i = 0; i < lines.length; i++) {
find=match(lines[i], "console.log");
if (find!=null) {
println("Found it.");
found=true;
ifind=i;
i=lines.length;
println(lines[ifind]);
}else{
println(" not Found it.");
}
}
if (found==true) {
//println(newev);
}
我的按钮onClick事件代码如下:
planned = :true
我想要实现的是我希望此按钮将项目发送到生产和重新加载数据源,以便不包括发送到生产的项目。但是,这些代码行是异步运行的,我认为数据源会在布尔更改之前重新加载。有没有办法在按钮的onClick事件上按特定顺序运行客户端脚本行?
答案 0 :(得分:0)
处理它的最可靠方法是使用Manual Save mode productionPlan
数据源:
var ds = widget.datasource;
ds.item.planned = false;
ds.item.inProduction = true;
ds.saveChanges({
success: function() {
app.datasources.productionPlan.load();
},
failure: function(error) {
// todo
}
});
您还可以考虑立即隐藏该行以使应用感觉更快:
widget.parent.visible = false;