对应extjs提示框不能正常显示,而使用js的本身提示框可以正常,但由于样式不统一,不是
好的解决方法。

解决该问题,要了解extjs异步原理。

ext的提示框都是异步的,非阻塞模式的,浏览器js的提示框是同步的,即是阻塞模式的。

也就是说:

Ext版的alert是异步执行,Ext.MessageBox.confirm()为异步。
JavaScript引擎是单线程的,强制所有的异步事件排队等待执行。

异步执行是指Ext.Msg.confirm调用后不停留,继续执行下面的代码。
而回调在其它的JS执行任务中被调用,在回调函数实现同步。

Ext.Msg.alert 是异步的;
无论是否执行此句语句,调用后不停留,程序都先走下一句js语句。
而 js的alert是同步的,执行时系统会挂起等待用户输入。

例子:
Ext.MessageBox.confirm("提示","门票修改成功!");
window.win.close();
出现IE运行结果:没有提示,页面直接关闭。

正确的使用是采用回调函数,在回调函数运行接下来js语句:
Ext.MessageBox.confirm("提示","门票修改成功!",function(btn){
window.win.close();})

另外ext中store的load()、reload()也是异步,同样需要经过回调函数解决代码执行顺序
问题。

Extjs关于alert显示不出—异步问题的更多相关文章

  1. C#使用Xamarin开发可移植移动应用(5.进阶篇显示弹出窗口与通讯中心)附源码

    前言 系列目录 C#使用Xamarin开发可移植移动应用目录 源码地址:https://github.com/l2999019/DemoApp 可以Star一下,随意 - - 说点什么.. 没啥好说的 ...

  2. 在子页面使用layer弹出层时只显示遮罩层,不显示弹出框问题

    最近子页面使用layer弹出层时只显示遮罩层,不显示弹出框,这个问题搞了很久,最后才发现,在子页面上使用弹出框时,如果只使用layer.alert()或者layer.open()时,会默认在当前页面弹 ...

  3. 解决 iReport 生成 pdf 时显示不出中文的问题

    有没有遇到这样的情况:在使用 iReport 做报表时,用pdf预览显示不出中文? 解决步骤是这样的: 1.加入jar包 下载两个jar包:itextasian.jar 和 itext-x.y.jar ...

  4. 请给出异步加载js方案

    请给出异步加载js方案,不少于两种 默认情况javascript是同步加载的,也就是javascript的加载时阻塞的,后面的元素要等待javascript加载完毕后才能进行再加载,对于一些意义不是很 ...

  5. ios访问web页面<div>点击事件不起效果,以及alert()显示url的解决办法

    ios访问web页面<div>点击不起效果,在其div上添加style=”cursor:pointer:“ jquery web页面动态append()事件调用方法:$(document) ...

  6. 本机的虚拟机执行ifconfig,显示不出ip的解决方法

    源于:https://blog.csdn.net/fuweihua123/article/details/78423715?locationNum=4&fps=1 本机的虚拟机执行ifconf ...

  7. 打开Activity时,不自动显示(弹出)虚拟键盘

    打开Activity时,不自动显示(弹出)虚拟键盘 在AndroidManifest.xml文件中<activity>标签中添加属性 android:windowSoftInputMode ...

  8. sweetalert 快速显示两个提示, 第二个显示不出的问题

    今天在使用 sweetalert 做提示框的时候, 有个操作快速做了两次提示, 发现第二次显示不出: sweetAlert({}, function() { $.get('', function() ...

  9. 经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

    经验总结:WebBrowser自动点击弹出提示框alert.弹出对话框confirm.屏蔽弹出框.屏蔽弹出脚本错误的解决办法 网上有好多解决方法,可是不一定好使,本人经过多次试验,针对WebBrows ...

随机推荐

  1. mac下docker使用笔记

    安装docker https://docs.docker.com/mac/ 启动docker环境launchpad -> Docker Quickstart Terminal ##       ...

  2. zepto源码--核心方法4(包装)--学习笔记

    主要介绍一下wrap, wrapAll, wrapInner, unwrap方法. wrapAll 在所有匹配元素外面包一个单独的结构.结构可以是单个元素或 几个嵌套的元素,并且可以是html字符串或 ...

  3. 手写一个更好用的performSelector/msgSend(详细修改版)

    这其实是一个NSInvocation练习作业 GitHub源码 vk_msgSend 引子 工作中难免会遇到一些场景,开发的时候不想引入整个头文件,但是又想调用一些方法 动态创建,动态调用看起来比较酷 ...

  4. 创建一个程序,从应用程序中随机添加N名参加歌唱比赛的同学,并随机对这N名同学的比赛按姓名的拼音先后顺序进行排序

    public class Pint { /** * 姓名 */ public String name; /** * 年龄 */ public String age; public Pint(){ } ...

  5. echarts入门基础,画柱型图

    注意:一定要自己引入echarts库 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...

  6. require,include,require_once,include_once的区别

    最近面试时被问到,一时间还真没想到太多,仅仅回答了大概的几个,于是回来再确认一下. 以下内容为网络摘抄: ①作用及用法  可以减少代码的重复 include(_once)("文件的路径&qu ...

  7. git制作增量包用于更新代码

    1 先找到指定的开始提交id,比如 05104e3475f63e1e49fbfcbd424a4a3801b95645 2 找到结束的提交id,比如 a0eb9bc6d4e1801062877fd435 ...

  8. 卷积神经网络CNN(Convolutional Neural Networks)没有原理只有实现

    零.说明: 本文的所有代码均可在 DML 找到,欢迎点星星. 注.CNN的这份代码非常慢,基本上没有实际使用的可能,所以我只是发出来,代表我还是实践过而已 一.引入: CNN这个模型实在是有些年份了, ...

  9. winform 对话框、打印框

    winform 对话框控件 1.打开文件对话框(OpenFileDialog) 2.保存文件对话框(SaveFileDialog) 3.字体对话框(FontDialog) 4.颜色对话框(ColorD ...

  10. 搭建springmvc的步骤

    一定注意文件的层级关系 1.cope相关的jar包到web-inf/lib目录下,并添加到类路径中. 2.配置web.xml文件,配置前端控制器DisPatcherServlet <servle ...