取消选择单选选项

2024-06-25

我正在使用引导单选按钮 http://getbootstrap.com/javascript/#buttons并希望允许取消选择无线电组。这可以使用额外的按钮来完成(Fiddle) http://jsfiddle.net/norlihazmeyGhazali/94ae9j0e/。但是,如果在选项处于活动状态时单击该选项,我想取消选择选定的单选选项,而不是额外的按钮。

我试过这个

$(".btn-group label").on("click", function(e) { 

    var clickedLabel = $(this);

        if ($(clickedLabel).hasClass("active"))
        {
            // an active option was clicked => deselect it
            $(clickedLabel).children("input:radio").prop("checked", false)
            $(clickedLabel).removeClass("active");
        }
    }
)

但似乎存在竞争条件:单击我使用的标签的事件似乎被 bootstrap.js 用于将单击的标签选项设置为“活动”。如果我引入超时,“active”类将被成功删除:

$(".btn-group label").on("click", function(e) { 

    var clickedLabel = $(this);

        if ($(clickedLabel).hasClass("active"))
        {
            setTimeout(function() {
                // an active option was clicked => deselect it
                $(clickedLabel).children("input:radio").prop("checked", false)
                $(clickedLabel).removeClass("active");
            }, 500)
        }
    }
)

如何在不使用超时的情况下成功切换所选选项?谢谢你的帮助。


使用 return false 而不是使用 PreventDefault 和 stopPropagation 这两种方法,效果相同。

区别在于返回false;更进一步 它还可以防止该事件传播(或“冒泡”) DOM。你可能不知道的是,每当发生事件时 发生在一个元素上,该事件在每个父元素上触发 元素也是如此。

$(".btn-group label").on("click", function(e) { 

    var clickedLabel = $(this);



          if ($(clickedLabel).hasClass("active"))
            {
                // an active option was clicked => deselect it
                $(clickedLabel).children("input:radio").prop("checked", false)
                $(clickedLabel).removeClass("active");
                return false;
            }
        });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

取消选择单选选项 的相关文章

  • Javascript CORS 图像/画布操作

    我正在尝试从另一个已配置为允许 CORS 的域检索图像 并操纵像素 然后我想显示结果并能够操纵结果 我可以在我请求的图像上使用 getImageData 和 toDataURL 所以我知道服务器部分可以工作 但是 当我尝试将图像的 src
  • Angular 4 - 具有动态参数值的自定义验证器

    我编写了一个自定义验证器 用于检查日期是否高于某个最小日期 代码如下所示 export function validateMinDate min Date ValidatorFn return c AbstractControl gt if
  • 滚动条宽度:细在 Firefox 中不起作用

    我刚刚在 Firefox 67 中实现了新的 css 滚动条颜色和滚动条宽度 滚动条宽度不起作用 无论我将其设置为自动 细化还是无 它都会显示相同的宽度 我想要它薄 但它不薄 我是这样实现的 root scrollbar color rgb
  • GraphQL 错误字段类型必须是输入类型,但得到:

    这是突变 const createNotebook mutationWithClientMutationId name CreateNotebook inputFields token type GraphQLString details
  • LightningChart JS - LineSeries / Progressive X 的损坏

    我在使用 LightningChart 时遇到了一个有趣的问题 它似乎会破坏或以其他方式减少我的数据 具体取决于它与图表的 DateOrigin 的距离 我的数据是每秒 1000 个样本 我试图一次显示 1 2 周的数据 我正在使用 Cha
  • 在 ReactJS 中更改 URL onClick

    在我的项目中我有一个TabComponent它显示 3 个选项卡 首页 热门 全部 现在 我正在使用context反应维持 activetab它存储当前选项卡 toggleTab改变的方法activetab using setState 选
  • css bootstrap 下拉菜单在 IE 中看起来不同

    我正在使用CSS引导程序3 2 0 http getbootstrap com css 然而 当在 IE 中查看该网站时 菜单选项周围有一个黑色边框 而且下拉菜单按钮看起来也有所不同 如果您查看该网站http getbootstrap co
  • 提交外部有 INPUT 的表单,并修改值后

    我有一个form 有几个
  • 脚本不会从nodejs应用程序中的ejs文件运行

    我正在尝试使用nodejs express mysql和ejs让网页显示图表 但我显然不明白ejs javascript等是如何工作的 我需要运行一个脚本来设置图表 来自 Chart js 模块 但它不会输出任何类型的图表 我尝试过的 将
  • 抓取 Shopee API v4

    我有一个最终项目 其中我想要检索的数据是通过在shopee上抓取数据来获取的 但是当我在隐藏的API上抓取shopee时遇到问题 当我在Insomnia脚本上尝试时 脚本会运行 但是当我尝试时在本地或 google colab 脚本上 这是
  • 如何使用 GWT 创建可点击的链接?

    我想与 GWT 建立一些可点击的链接 我不确定这是否是最佳实践 基本上我想要类似这样的东西 如果我用 html 编写的话 a href index html alt Link a Use a 超级链接 http google web too
  • 过滤数据表中的行

    我目前的 JQuery 插件 DataTables 工作正常 并且我在页面顶部插入了一个按钮来进一步过滤列表 我还使用了 DataTables 内置的搜索栏 我希望按钮向下过滤表格 并只显示包含特定值的行 下面是我一直在做的事情 但似乎没有
  • Bootstrap 面板主体,内有表格

    我有一个引导面板 单击图标即可折叠并自动关闭 该面板内部包含一个全宽的表格 但只有在没有任何内容时才看起来像这样panel body 例如 这张桌子横跨面板的整个宽度和高度 看起来不错 但如果我可以有一个围绕桌子的类 我会更喜欢 但是 如果
  • 汇总异常以保留模块

    我使用一个名为的汇总插件rollup plugin lit css转变 css文件转换成 javascript 模块 该插件非常简单 它本质上只是附加export default到文件 我的汇总配置使用preserveModules and
  • 为什么我的数据没有存储到我的 Firebase 实时数据库中?

    我正在尝试为网络应用程序制作一个注册页面 这会将数据发送到 firebase 数据库 我已阅读官方 firebase 文档并按照说明写入数据 但什么也不会写 在我的数据库控制台中 它显示的所有内容都是空 而不是我的数据 我没有收到控制台错误
  • 多个引导模式的滚动问题

    我有一个带有大量信息的模态页面 因此您需要滚动 该模式包含指向第二个模式的链接 When I 打开模态 1 单击链接打开模式 2 模式 1 保持在后台 然后关闭模式 2 以便我回到模式 1 modal 1 失去滚动 仍然有一个滚动条 但它不
  • chrome中使用jquery的图像高度问题

    img height 回报0在 Chrome 中 但在 IE 和 Firefox 中返回实际高度 在 Chrome 中获取图像高度的实际方法是什么 正如 Josh 提到的 如果图像尚未完全加载 jQuery 将不知道尺寸是多少 尝试这样的操
  • 单击即可切换背景颜色和过渡

    这看起来应该很容易 但我真的找不到办法做到这一点 动画 http doir ir css gif http doir ir css gif 当您单击这些相应的链接时 我需要更改和过渡页面的背景颜色 我见过的最接近触发这种类型转换的事情是 仅
  • 在用户单击之前图像不会绘制在画布上?

    我使用执行类似以下操作的函数绘制几张图像 context drawImage img width 2 1 height 2 1 width height 我读过 我需要等待图像加载后才能绘制它 如下所示 img onload functio
  • CSS 链接图像带有下划线(“a”显示设置为阻止)

    我有一个菜单 我希望每个单独的项目中文本周围的所有空间都能将用户带到指定的页面 我在网上查了一下 发现最好的解决方案是将 a 显示设置为阻止 如下 a display block height 100 text decoration und

随机推荐

  • Filebeat 日期字段映射为类型关键字

    Filebeat正在从文件中读取日志 其中日志的格式如下 logTimestamp 2019 11 29T16 39 43 027Z version 1 message Hello world logger name se lolotron
  • 究竟要消化什么并在 XMLDSIG 上签名以及如何进行? (或者,OSX 本机客户端与服务器上计算的 XMLDSIG 不匹配)

    我正在尝试使用封装签名 sha1 摘要和 rss sha1 签名按照 XMLDSIG 规范对 xml 文档进行签名 并且服务器不断返回 297 拒绝 签名与计算的 结果 不匹配 297 Rejeicao Assinatura difere
  • mediaelement.js - 具有固定最大尺寸的响应式视频

    我该如何设置媒体元素 js questions tagged mediaelement js缩小视频以适应小屏幕尺寸 但不将其放大到超出其实际尺寸 除了将其包装在正确大小的 div 中之外 如果我找不到更好的解决方案 我会回退到这个位置 我
  • 为什么linkedhashmap维护双向链表进行迭代

    因为任何线程都没有内部合理的解释 请给我确切的理由 对于插入顺序 用单链表维护就足够了 但为什么不呢 在这种情况下 双向链表如何提高性能 所有方法都是从 hashmap xpt 4 方法继承的 那么 hashmap 的迭代器不维护顺序 而
  • “真正的”多维数组的定义是什么以及哪些语言支持它们?

    我读过的大多数编程书籍都有以下几行 X 语言不支持真正的多维数组 但您可以使用数组的数组来模拟 近似 它们 由于我的大部分经验都是基于 C 的语言 即 C Java JavaScript php 等 因此我不确定什么是 真正的 多维数组 a
  • Guzzle 获取文件并转发

    我有一个网络服务 可以获取文件并将其返回给用户 基于 Symfony 自从我使用curl 来做到这一点 我刚刚发现 guzzlehttp 看起来很棒 但是 我不知道如何使用 guzzle 执行此操作 而不将下载的文件 xml 或 txt 保
  • 如何将表中的表单数据 POST 到 PHP

    我目前正在为工作中的员工创建一个时间表表单 但我一直致力于正确发布输入值 我已经设置了一个数据库 但现在我什至无法获取要在 php 页面中显示的值 这是我当前表中的示例
  • Raspberry pi 3 B+ 中的串行通信

    我想在 Raspberry pi 3 B 和 GSM GPRS A6 之间进行通信 我尝试过 但无法从 Raspberry pi 向 GPRS 模块发送数据 现在 我知道在较新的操作系统 在我的例子中是 Raspbian Stretch 中
  • Haskell 中的随机枢轴快速排序

    是否有可能在 Haskell 中实现快速排序 使用 RANDOM PIVOT 但仍然有一个简单的Ord a gt a gt a 签名 我开始了解 Monad 目前 我将 monad 解释为某种 命令模式 这对于 IO 非常有用 所以 我知道
  • Roslyn:将 C# 转换为 VB

    我有这样的情况 我需要将 C 项目转换为 VB NET 项目 我想自动化这个 所以我不能使用在线工具或类似的东西 有 粘贴为 C VB 示例 Visual Studio 扩展 https github com akimboyko MetaP
  • 如何将 Angular 7 应用程序包含在现有的 html 文件和网站中?

    我一方面有一个现有网站 另一方面有一个 Angular 7 应用程序组件 我想编辑现有的someusecase html并重用我的 Angular 7 应用程序 例如
  • VS 2010 和 MBUnit 如何只运行一项测试

    我安装了 Gallio MbUnit 并使用 VS 2010 RC 我希望能够运行单个单元测试或 TestFixture 内的所有单元测试 而不是每次调试时整个项目中的所有测试 在 VS 2010 中如何做到这一点 安装testdriven
  • 如何最大限度地减少 Go 中的垃圾收集?

    有时您可能想避免 最小化垃圾收集器 所以我想确定如何做到这一点 我认为下一个是正确的 在函数的开头声明变量 使用数组代替切片 还有吗 为了最大限度地减少 Go 中的垃圾收集 您必须最大限度地减少堆分配 为了最大限度地减少堆分配 您必须了解分
  • SignalR - 如何向除呼叫者之外的所有人发送消息

    我有一个 Aspnet core 3 1 MVC 应用程序 我在其中配置了 SignalR 集线器 我有一个控制器 我可以在其中进行依赖注入 oIHubContext private readonly IHubContext
  • 如何在拖动另一个元素时获取鼠标光标下的元素?

    我用谷歌搜索并找到了几个答案 但它们都是关于单击或鼠标移动事件的 这些事件不适合我的问题 基本上 我允许用户从列表中拖动项目并将其放在另一个列表中的文件夹上 并且每当项目拖动到元素上时 我想突出显示元素 在文件夹列表中 监听文件夹列表上的
  • 无法找到类型 [Microsoft.TeamFoundation.Build.Workflow.WorkflowHelpers]

    我正在尝试对来自指定进程参数的 Powershell 的构建进行排队 我收到以下错误 知道我做错了什么吗 无法找到类型 Microsoft TeamFoundation Build Workflow WorkflowHelpers 确保包含
  • CUDA双指针内存复制[重复]

    这个问题在这里已经有答案了 我这样写了我的示例代码 int d ptr cudaMalloc void d ptr sizeof int N int tmp ptr N for int i 0 i
  • 如何从 Uri xamarin android 获取实际路径

    我想从 Uri 获取实际路径 当我使用意图选择文件时 它将返回 URI 但下面的代码行无法将 URI 转换为字符串路径 打开文件选择器 public static void PickFile Activity context Intent
  • 在 Powershell 中获取小文件的“磁盘大小”

    我正在使用一个遗留系统 该系统有大量来自外部系统的导入 其中大多数通过下载文件 根据上下文大小不同 处理它 然后将文件存储在 SAN 卷上的其他位置 格式为 NTFS 和安装在 WS2008R2 盒子上 我们遇到的问题是 由于簇的大小 大量
  • 取消选择单选选项

    我正在使用引导单选按钮 http getbootstrap com javascript buttons并希望允许取消选择无线电组 这可以使用额外的按钮来完成 Fiddle http jsfiddle net norlihazmeyGhaz