具有布尔返回值的 jQuery UI 对话框 - true 或 false

2023-11-26

我正在尝试替代javascript确认()。我找到了可以完全自定义的 jquerydialog() 函数。问题是我无法让它返回true or false.

这是我的代码:

$('#delBox').dialog(
        { autoOpen: false, resizable: false, modal: true, closeOnEscape: true, width: 300, height: 'auto', title: 'Deletar registro',
            buttons: {
                "Ok": function () {
                    return true;
                }, "Cancelar": function () {
                    $(this).dialog("close");
                    return false;
                }
            },
            open: function () {
                var buttonsSet = $('.ui-dialog-buttonset').find("button:contains('Ok')");
                buttonsSet.attr("class", "ui-button ui-state-default");
                $('.ui-dialog-titlebar-close span').empty();
                $('.ui-dialog-buttonset').find("button:contains('Ok')").button({
                    text: false,
                    icons: {
                        primary: 'ui-icon-ok'
                    }
                });

                $('.ui-dialog-buttonset').find("button:contains('Cancelar')").button({
                    text: false, 
                    icons: {
                        primary: 'ui-icon-cancel'
                    }
                });
            }
        });

这仅在选择任何选项之前返回一个对象:

function deletar() {
     alert($('#delBox').dialog('open'));
}

jQueryUI 对话框无法返回true or false因为它们显示在其他内容之上但是without阻塞执行。

你能做的最好的事情是:

  1. 做盒子modal这样它就隐藏了其他内容

  2. 根据选择的选项提供要使用的回调。

为了获得额外的奖励积分,您可以创建一个$.Deferred()Promise 对象并在显示对话框时返回该对象。那么你可以resolve or reject按钮事件处理程序中的承诺。

这将使您能够清楚地分离显示对话框和执行由对话框随后触发的操作:

function showDialog() {
   var def = $.Deferred();

   // create and/or show the dialog box here
   // but in "OK" do 'def.resolve()'
   // and in "cancel" do 'def.reject()'

   return def.promise();
}

showDialog().done(function() {
    // they pressed OK
}).fail(function() {
    // the pressed Cancel
});

// NB: execution will continue here immediately - you shouldn't do
//     anything else now - any subsequent operations need to be
//     started in the above callbacks.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

具有布尔返回值的 jQuery UI 对话框 - true 或 false 的相关文章

  • IE8 中的 Javascript 消息超出堆栈空间

    我正在使用 Breeze 1 4 1 Internet Explorer 8 和 ASP NET MVC 4 Web API 我在查询时收到以下消息 查询失败 localhost port breeze Data Metadata 元数据导
  • 在 Javascript 中,使用 var foo = function foo(i) { ... } 的动机或优点是什么?

    我在答案中看到 在Javascript中 为什么要写 var QueryStringToHash function QueryStringToHash query https stackoverflow com questions 3233
  • 为什么 JSON.stringify() 接受 Date 对象?

    至少在 Firefox 中 您可以对 Date 对象进行字符串化 gt gt gt JSON stringify now new Date now 2012 04 23T18 44 05 600Z 这是有效的 因为 在 Firefox 中
  • 拖放图像上传在服务器上不起作用

    我正在尝试实现拖放图像上传 我在网上找到了一个相当简单的脚本并适合我的使用 在我的本地安装中 文件上传得很好 但在服务器上却不行 从我的调试尝试来看 SERVER HTTP X FILENAME 甚至没有被 php 设置 我尝试了以下方法
  • Angular UI.Bootstrap 单选按钮在 ng-repeat 中表现得很奇怪[重复]

    这个问题在这里已经有答案了 我在 Angular 的 ui bootstrap 中动态生成无线电模型的选项时遇到问题 我想我可以简单地对数组进行 ng repeat 使用 btn radio 属性的内容 如下所示 in the contro
  • 表单提交不起作用

    我有一张桌子 可以打印出所有可用的相机 它使用表单来更改这些设置 问题在于该表单仅更新条目中的最后一个摄像机 换句话说 如果我更改表单并为列表中的最后一个摄像机点击 应用 它将起作用 如果我更改此列表中任何其他摄像机的表单 它会将其更改为与
  • Backbone Marionette,复合视图初始化两次

    我正在使用一个复合视图 它的 el 上调用了 dialog 然后 复合视图列出集合中的项目 现在我尝试了多种方法来渲染集合项 在将其附加到视图之前和之后从复合视图外部获取 在视图内部获取 从我的服务器脚本预加载集合等 一切似乎都有效 但出现
  • JQuery _renderItem 没有被调用

    我正在尝试使用 renderItem 函数创建自定义 ui menu item 元素 但经过可能尝试后 我什至无法调用该函数 自动完成功能正在工作 但就像 renderItem 函数不存在一样 这是我的脚本部分
  • 如何使用 jQuery 获取数组键?

    下午好 我有一个数组 其中包含一些键和值 然后我需要获取数组键而不是其中的数据 我想用 jQuery 来做到这一点 例如 我知道 PHP 有一个名为 array keys 的函数 它将数组作为参数 并返回一个数组 其中包含每个索引中的每个键
  • 从 UnityWebGL jslib 返回字符串

    我想使用 jslib 来获取网址参数 像这样的代码 jslib GetUrl function var s var strUrl window location search var getSearch strUrl split var g
  • jQuery live() 和ready() 之间的区别?

    两者之间的确切区别是什么live and ready 编辑 发现die http docs jquery com Events die是相反的live ready http docs jquery com Events ready让你注册一
  • Node.js - Async.js:并行执行如何工作?

    我想知道 async js 中并行执行是如何工作的 async require async async parallel function callback for var i 0 i lt 1000000000 i Do nothing
  • 当元素具有多个类时如何在 switch 语句中检查 className

    在下面的示例中 我只想单击该选项以在警报中显示 我正在尝试使用 switch 语句来确定单击了哪个类 如果我的 div 不包含多个类 则我的示例将有效 我尝试使用classList contains在我的 switch 语句中无济于事 有没
  • 如何在javascript中解析 yyyy-MM-dd HH:mm:ss.SSS 格式的日期?

    const time 2016 11 16 00 00 00 000 const date new Date time console info date 似乎 safari 无法解析 yyyy MM dd HH mm ss SSS 格式日
  • 如何在 Bootstrap 4 轮播中堆叠多个图像

    我不知道如何使用 Bootstrap 4 以及如何在一张幻灯片中显示多个小图像 例如缩略图 而不是让图像填充轮播的宽度 我已经使用下面的代码尝试了一些操作 但仍然无法堆叠很多图像 div class container h2 class t
  • Javascript 替换为正则表达式无法正常工作

    我正在尝试使用正则表达式验证名称 正则表达式阻止用户连续输入 2 个空格或点 这是我的代码 function test input var regex A Za z 0 1 s 0 1 input value input value rep
  • 完整日历 - 向事件对象添加额外属性

    可能是由于我缺乏理解 但我使用 PHP 返回 JSON 字符串来带回事件数据
  • 如何使用 jQuery 和 .ajax 方法发送数组而不转义括号?

    我试图发送具有多个值的相同参数名称 但即使在阅读了 SO 上的帖子后也无法弄清楚如何做到这一点 我想要一个数组destination input var myObject search zip params search zip searc
  • 在64位环境中加载32位进程

    我有以下几个问题 CHM 是 编译的 HTML 文件 我的 CHM 文件有一个启动 32 位应用程序的链接 CHM 文件是用 Javascript 编码的 这在 32 位操作系统环境中运行良好 但这在 64 位操作系统环境中不起作用 原因是
  • 通过jquery ajax()和serialize()提交html表单

    我想通过 jquery ajax 提交此表单 这是我所做的 但它不起作用 即表单正在提交并刷新页面 但我没有看到响应 即在同一页面上打印数组 HTML

随机推荐

  • 使用 PHP 和 MySQL 显示日语字符的问题

    我正在使用 PHP 连接到 MySQL 数据库来创建 XML 文件 除了字符编码之外 一切正常 我需要日语和英语字符 所以显然我选择使用 UTF 8 唯一的问题是数据库中的日语字符无法正确显示 数据库和表的排序规则设置为 UTF8 gene
  • 在 Mac OS X 上的 64 位进程中,中等大小的内存分配怎么会失败?

    我正在构建一个相册布局应用程序 该应用程序经常将 JPEG 图像解压缩到内存中的位图缓冲区中 图像的大小限制为 100 兆像素 但通常不超过 15 兆像素 有时这些缓冲区的内存分配会失败 NSMutableData alloc initWi
  • 如何从c#发送邮件

    我有代码 System Web Mail MailMessage oMailMessage new MailMessage oMailMessage From strFromEmaild oMailMessage To strToEmail
  • 传单:添加指向标记的链接

    非常简单的问题 如何使 Leaflet 中的地图标记可点击并将用户路由到其他页面 每个标记都有自己的页面 我尝试了以下方法但没有成功 不知何故 所有标记都指向同一页面 即最后分配的 URI var markers coords 51 505
  • 在 Python 中加速矩阵向量乘法和求幂,可能通过调用 C/C++

    我目前正在研究一个机器学习项目 其中 给定一个数据矩阵Z和一个向量rho 我必须计算的值和斜率逻辑损失函数 at rho 计算涉及基本的矩阵向量乘法和 log exp 运算 并采用避免数值溢出的技巧 在本节中进行了描述 上一篇文章 我目前正
  • 如何分配或返回受联合约束的通用 T?

    换句话说 如何为联合类型集中的不同类型实现特定于类型的解决方案 鉴于以下代码 type FieldType interface string int type Field T FieldType struct name string def
  • 无需刷新页面即可更改 HTML 代码

    有没有可能how to change HTML jsp 页面without refreshing it 用例是用户向文本区域写入一些内容 然后点击某个按钮 然后我需要将一些对象 即图片 添加到页面中先前定义的位置 gt 我需要更改 HTML
  • Opencv虚拟相机旋转/平移以获得鸟瞰图

    我有一个校准过的相机 我确切地知道内部和外部数据 相机的高度也是已知的 现在我想虚拟地旋转相机以获得鸟瞰图 这样我就可以用三个旋转角度和平移来构建单应性矩阵 我知道 2 个点可以通过单应性从一张图像转换为另一张图像 x K R t n d
  • .Rprofile 未来源

    我试图在 Rprofile 脚本中为 blogdown 包设置一些全局选项 但它们没有被获取 Rprofile 脚本如下所示 options blogdown ext Rmd blogdown author Maryam Khezrzade
  • INSERT AFTER 或 UPDATE AFTER 触发器内的回滚是否会回滚整个事务

    INSERT AFTER 或 UPDATE AFTER 触发器内的回滚是否回滚整个事务或仅回滚作为触发器原因的当前行 这与 Commit 相同吗 我尝试通过当前使用 MSTDC 进行事务的项目代码进行检查 看起来好像整个事务已中止 如果触发
  • 语义网框架

    有哪些语义 Web 框架 每个框架有哪些优点 缺点 我已经广泛使用了Jena 我看过Sesame简要地 还有其他我应该考虑的吗 Redland是一个很好的RDF框架 就像Andreas说的 我主要使用它的 Python 绑定 并通过 Mac
  • Laravel 变形关系

    我有一个关于在 Laravel 中保存多态关系的问题 这是我想在 laravel 中创建的模型 商店有很多产品 产品可以是 商品 活动 或 服务 我有以下表格 shops id user id name events id public t
  • 为 https 运行 Tomcat7

    当我在tomcat 7 0的server xml中更改https以进行安全连接时
  • 在加载时设置 Google 图表宽度

    我有这个我的网站上的谷歌图表 目前这是一个散点图 但我想要所有类型图表的解决方案 例如 如果您使用 700 像素宽的窗口加载网站 则图表尺寸不会响应 图表太宽 下面是我正在使用的代码 HTML div div CSS chart div w
  • 有检查 WCF 服务是否在线的示例吗? [复制]

    这个问题在这里已经有答案了 我将有一个使用 WCF 服务代理的客户端应用程序 该客户端将是一个 Windows 窗体应用程序 对某个地址的 N 个端点执行 basicHttpBinding 我想要解决的问题是 当任何 Windows 窗体应
  • Laravel 5 中的自定义分页视图

    拉拉维尔 4 2可以选择指定自定义视图app config view php例如 Pagination View This view will be used to render the pagination link output and
  • 如何在jsp文件中打印java字符串[重复]

    这个问题在这里已经有答案了 我正在尝试通过 jsp 文件打印字符串变量 这是我的代码
  • OpenGL 上下文之间可以共享什么以及如何启用共享

    我正在制作一个 CAD 软件 它将为相似的视图创建不同的 OpenGL 上下文 如果它们没有显示相同的内容 我想在 OpenGL 上下文之间共享尽可能多的数据 尤其是 VBO 和着色器 我想知道what我可以分享和how我分享它们 在一个跨
  • 如何使用 lambda 实现计数器?

    我可以使用一个计数器来实现lambdapython 中的函数或一些更Pythonic 的表达式 这是我的代码 counter 0 if 0 lt arrival time counter 1 else pass 这是我尝试过的 count
  • 具有布尔返回值的 jQuery UI 对话框 - true 或 false

    我正在尝试替代javascript确认 我找到了可以完全自定义的 jquerydialog 函数 问题是我无法让它返回true or false 这是我的代码 delBox dialog autoOpen false resizable f