问题标签 [showmodaldialog]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 从 window.open 返回一个值
我们最近发现 Chrome 不再支持 window.showModalDialog 这是有问题的,因为我们的企业应用程序使用这种方法。
显然,有一个短期的解决方法可以让您恢复 showModalDialog,但它涉及修改注册表,这对我们的普通用户来说太复杂(和风险)了。因此,我不是这种解决方法的忠实粉丝。
长期的解决方案显然是删除对这个过时方法的所有调用,并将它们替换为方便的 jQuery 插件(例如 VistaPrint 的Skinny Modal Dialog 插件。顺便欢迎其他建议)。
我们使用模态对话框的典型场景是在执行无法撤消的操作之前要求用户确认是/否,在继续之前要求用户同意条款和条件等。通常是“是”上的 onclick 事件或模态对话框中的“确定”按钮如下所示:
同样,“取消”或“否”按钮如下所示:
我们可以从对话框中返回一个值这一事实非常方便,因为它允许通知“父”窗口用户是否单击了“确定”或“取消”按钮,如下所示:
关于 showModalDialog 我要提到的最后一件事是,即使对话框中显示的文档来自不同的域,它也能很好地工作。我们的 javascript 从http://the-client.com运行是很常见的,但“服务条款”网页来自http://the-enterprise-vendor.com
我需要一个临时解决方案,以便在我们制定长期解决方案时尽快部署。这是我的标准:
- 现有 JavaScript 中的最小代码更改
- 弹出窗口必须能够向“父级”返回一个值。通常这个值是一个布尔值,但它可以是任何简单的类型(例如:字符串、整数等)
- 即使内容的 URL 来自不同的域,解决方案也必须有效
这是我到目前为止所拥有的:
1) 在我的 JavaScript 中添加以下方法:
正如您在此方法中看到的,我尝试通过隐藏菜单和工具栏使弹出窗口看起来尽可能类似于对话框,我设置了每 500 毫秒的时间来检查窗口是否已被用户关闭如果是这样,获取“returnValue”并调用回调。
2) 将所有对 showModalDialog 的调用替换为以下内容:
该方法的第四个参数是回调,我在其中检查用户是否在允许她继续之前单击了“确定”按钮。
我知道这是一个很长的问题,但基本上可以归结为:
- 您如何看待我提出的解决方案?
- 特别是,您认为我能够从使用 window.open 打开的窗口中获取 returnValue 吗?
- 您可以建议任何其他替代方案吗?
c# - chrome新版本中的showmodalDialog问题
新版本中的 Google chrome 删除了 showmodalDialog 。并且我使用此浏览器的代码不起作用我该如何解决我的问题?
javascript - 相当于 showModalDialog
我有一个调用 showModalDialog 的 web 应用程序,但由于某种原因,这不受 chrome 支持,我确实搜索了解决方法,但没有任何成功。
showModalDialog 显示一个带有搜索字段的 aspx 页面,当用户在任何部门名称链接上选择名称应显示在括号窗口文本框中时,将显示一个带有所有部门的网格。
尝试使用 window.open 方法,但无法将所选字段从打开的窗口分配到父窗口控件,想知道什么是理想的解决方案,因为我正在使用 asp.net web。应用。任何关于此的建议/帮助都会对 gr8 有所帮助。
javascript - Chrome 37 已停止对 showmodaldialog 的支持。用什么代替它?
我的 web 应用程序在新版本(37 及更高版本)启动后崩溃Chrome
,因为 chrome 已经停止支持。showmodaldialog
但是我需要在我的 web 应用程序中实现相同的功能。
我需要一些return value
与弹出窗口相同的showmodaldialog
内容。我分别设计了所有弹出窗口页面并从父页面调用它们。
html - 谷歌应用脚本中的模态对话框是否可编辑?
我正在使用 .showModalDialog 函数显示一些 html。我想更改此模式对话框的某些属性,例如删除标题和更改填充,有什么办法吗?
javascript - 如何检查 window.showModalDialog 的可用性?
Javascript 方法 window.showModalDialog 已弃用,不再在 Chrome 浏览器中工作。很快它将停止在 Fire Fox 中工作。我想用 window.open 替换它,但前提是浏览器不支持 showModalDialog。
如何检测浏览器是否仍支持此功能?是否可以通过modernizr库来做以及如何做?
google-chrome - “showmodaldialog”在 chrome 中不起作用!除了 window.open 之外的任何其他选择?
在我的代码中,“showmodaldialog”已用于日期选择器,但它在 chrome 中不起作用!
除了 window.open 之外的任何其他选择?
另一件事,当我在 IE11 更改下工作时,此更改需要在所有三个、chrome、IE11 STD 模式和 IE9 STD 模式下运行。
python - 通过 Pubsub 使用 ShowModal 创建和销毁 Dialogue 后无法返回 wxpython 主框架
我正在使用 wxpython 和 wx.lib.pubsub 编写应用程序。在 python 2.7.3 中
1-有一个带有菜单项的框架。单击此菜单时,pubsub 会发布一条消息。
2-此消息破坏(如果可能)并创建“第一级”对话。
3-“第一级”对话框有一个值列表和一个“添加值”按钮。(注意:可以修改此类变量列表,因此我正在尝试更新此列表)
4- 单击“添加值”按钮时,pubsub 会发布另一条消息。
5- 此消息创建一个“二级”对话框,因此可以为新变量编写一个新名称。
6-在这个“第二级”对话中有一个“继续”按钮,它有两个后果:
第一个:Self.Destroy();
第二个:进入第2步,即破坏“第一级”对话并重新创建它。
到那时,该程序似乎运行良好,但是,当我将变量“添加”到“第一级”对话框中时,我将其销毁,然后我无法返回步骤 1 中所述的主框架。
为什么会这样?
所有对话都通过 ShowModal() 显示。但是,如果我只使用 Show() 它似乎可以正常工作,但是由于程序有很多菜单和项目,所以 ShowModal() 是首选。知道为什么它适用于 Show() 但不适用于 ShowModal() 吗?
如果有更简单的方法来执行我想做的任务,将不胜感激。
javascript - Safari 8 中新打开对话框的高度不正确
第一次来这里!
在 Mac OS Yosemite 中使用 Safari 8 时,我看到一些与使用 JS 函数window.showModalDialog()创建的对话框高度相关的不良行为。这是浏览器错误还是其他什么?我希望能够在所有浏览器中打开具有一致高度的对话框,而无需针对 Safari 8 进行条件化。
行为如下:
显示新模态时,其高度小于预期。如果我右键单击模式的顶部区域并选择“自定义工具栏”,则会恢复正确的高度。单击自定义选项的完成时,窗口可能会再次增加高度,这一次显示的高度超出了预期。
当视图 > 显示状态栏的常规 Safari 设置启用时,对话框将呈现在所需的高度。当状态栏被禁用时,对话框以不正确的高度呈现。
附加信息
带有描述的屏幕截图:http: //imgur.com/KqrHZs4
Safari 8 和 6.2 有时会在第一次打开对话框时报告不正确的值(见屏幕截图)。右键单击页面并选择“重新加载”时,页面会以正确的值刷新。
我认为不可能隐藏 URL 栏,我认为这是与窗口高度房地产相关的问题的一部分。
CODE - 启动模式对话框的测试页面。
javascript - 嵌套 showModalDialog 的 ie11 问题
我正在开发一个使用许多模式对话框来获取输入的 Web 应用程序。当我开始使应用程序与 IE11 兼容时,问题就开始了(它在 IE8 中运行良好)。当从主页调用时,模态对话框完美地返回值,但是当我从模态对话框创建模态对话框时,该值被返回但未被捕获并被视为undefined
.
此代码在通过主页使用时可以完美运行,但是当我从模态对话框页面使用它时,它returnValue
会丢失。