|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-07-23
Ext.MessageBox.confirm是异步在,也就是说弹出确认窗口之后,用户还没选择“是”/“否”,代码还会继续往下走,如下面在代码,会弹出alert("111");
有没有办法控制程序为:用户选择完“是”/“否”,才继续往下执行代码。 别告诉我要放在function(button,text)里面哦。 <script type="text/javascript">
Ext.onReady(function(){
Ext.MessageBox.confirm("请确认","是否真的要删除指定的内容",function(button,text){
alert("22");
});
alert("111");
});
</script>
//-------新加的部分: to楼下几位高手,其实是这样的,我监听了树形控件的 beforenodedrop : ( Object dropEvent ) Fires when a DD object is dropped on a node in this tree for preprocessing. Return false to cancel the drop. The drop... 事件,这个事件是节点被拖曳放开之前触发的,我是想当用户拖曳完之后,让用户确认是否拖曳,如果用户选择“是”之后,再移动节点。如下方代码,但实际发生的事情为:弹出确认框之后,马上就被运行第7行了:return false
function beforenodedrop(e)
{
Ext.MessageBox.confirm("请确认","是否要移动节点",function(button,text){
if(button=="yes")
return true;
});
return false;
}
声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2008-07-23
Ext.Msg.confirm('删除数据','您确认要删除选中的数据吗?',function(btn){
if (btn=='yes'){
//delete
}else{
//取消
}
}
楼主猜对了
|
|
| 返回顶楼 | |
|
时间:2008-07-23
xxxx3 写道 Ext.MessageBox.confirm是异步在,也就是说弹出确认窗口之后,用户还没选择“是”/“否”,代码还会继续往下走,如下面在代码,会弹出alert("111");
有没有办法控制程序为:用户选择完“是”/“否”,才继续往下执行代码。 别告诉我要放在function(button,text)里面哦。 <script type="text/javascript">
Ext.onReady(function(){
Ext.MessageBox.confirm("请确认","是否真的要删除指定的内容",function(button,text){
alert("22");
});
alert("111");
});
</script>用一个setTimeout去调用,直接confirm里付值给变量 |
|
| 返回顶楼 | |
|
时间:2008-07-23
lims 写道 xxxx3 写道 Ext.MessageBox.confirm是异步在,也就是说弹出确认窗口之后,用户还没选择“是”/“否”,代码还会继续往下走,如下面在代码,会弹出alert("111");
有没有办法控制程序为:用户选择完“是”/“否”,才继续往下执行代码。 别告诉我要放在function(button,text)里面哦。 <script type="text/javascript">
Ext.onReady(function(){
Ext.MessageBox.confirm("请确认","是否真的要删除指定的内容",function(button,text){
alert("22");
});
alert("111");
});
</script>用一个setTimeout去调用,直接confirm里付值给变量 confirm 里就不需要settimeout了 settimeout在外面的话同样靠不住。 |
|
| 返回顶楼 | |
|
时间:2008-07-23
to xxxx3
代码放在callback中有什么问题吗? 我实在想象不出来放在 Ext.MessageBox.confirm()外有什么好处。 |
|
| 返回顶楼 | |
|
时间:2008-07-24
to楼上几位高手,其实是这样的,我监听了树形控件的
beforenodedrop : ( Object dropEvent ) Fires when a DD object is dropped on a node in this tree for preprocessing. Return false to cancel the drop. The drop... 事件,这个事件是节点被拖曳放开之前触发的,我是想当用户拖曳完之后,让用户确认是否拖曳,如果用户选择“是”之后,再移动节点。如下方代码,但实际发生的事情为:弹出确认框之后,马上就被运行第7行了:return false
function beforenodedrop(e)
{
Ext.MessageBox.confirm("请确认","是否要移动节点",function(button,text){
if(button=="yes")
return true;
});
return false;
}
|
|
| 返回顶楼 | |
|
时间:2008-07-24
那为什么不 if(button == 'yes') return true; else return false;呢
|
|
| 返回顶楼 | |
|
时间:2008-07-24
用html原生的confirm算了.
|
|
| 返回顶楼 | |
|
时间:2008-07-24
onetown 写道 那为什么不 if(button == 'yes') return true; else return false;呢
这样写也没用,因为Ext的messagebox不是中断调用,一弹出“是否要移动”,马上就会往下执行其他javascript代码了 |
|
| 返回顶楼 | |
|
时间:2008-07-29
1,window.confirm
这个是同步的 2,如果用户选否,还原回去。 |
|
| 返回顶楼 | |








