Extjs / Javascript -在函数返回之前等待MessageBox响应
Extjs / Javascript - wait for MessageBox response before function return
我正在做一个Extjs项目,4.0.7版,我有一个问题。我有一个在保存之前验证数据有效性的函数。它看起来像这样:
me.validateEmployeeSystemSettingsOnSave = function (a,b,c) {
switch (c) {
case 1:{
if(expression)
return {success: false}
if(expression2){
Ext.Msg.show({
title:'',
msg:'',
buttons: Ext.Msg.YESNO,
icon: Ext.Msg.QUESTION,
fn: function (btn) {
if (btn == 'yes') {
return { success: true };
}
else if (btn == 'no') {
return { success: false};
}
},
modal: true
});
}
else return {success: true}; /*problem line*/ //this is the default answer, when function will
//not enter any expression and return {success: true}
}
case 2:{
}
}
上面的函数是在onSave函数中调用的,像这样:
var response = me.validateEmployeeSystemSettingsOnSave(dsa,ssa,daa){
if(response.success){
this.save();
}
else{
}
}
我的问题是:是否有任何方法可以等待Ext.msg.show()的答案,在到达默认的return
之前,我用/问题行/标记?因为现在函数不接受我的yes或no答案,它总是返回{success: 'true'}
,这是正常的,考虑到函数的结构。
任何想法?谢谢你!
你不应该等待,而是使用回调!所以在你的情况下执行回调,而不是返回{ success: true };
相关文章:
- 单击按钮以等待单击按钮
- React组件等待所需道具进行渲染
- 正在等待呈现图表,直到加载数据为止
- 在等待ajax请求时显示微调器并禁用页面
- Javascript在for循环中等待处理请求
- JavaScript循环并等待函数
- 在等待异步任务时永久循环
- 在通过child.print()打印之前,我如何等待图像加载到我的新窗口中
- 失败:等待Protractor与页面同步时出错:“”;在窗口上找不到角度”;
- 等待300毫秒,然后使用jQuery向下滑动菜单
- 等待循环调用的所有承诺完成
- 等待回调函数执行
- RxJS等待承诺解决
- WIll window.addEventListener(“加载”,function(),false);等待浏览器自动填
- Casperjs等待资源
- draggableCursor没有't更改为等待光标
- 如何使请求等待上一个请求完成
- 更改css链接并等待加载新的css
- 让ng更改等待$watch完成
- Extjs / Javascript -在函数返回之前等待MessageBox响应