在 VueJS 中取消选中 CheckBox 及其标签

2024-03-30

我试图取消选中在 VueJs 中使用其标签选中的复选框。

DEMO:

new Vue({
  el: '#app',
  data: {
    checkedNames: [],
    checkedName: true
  },
  methods: {
    uncheck: function() {
      this.checkedName = !this.checkedName;
    }
  }
})
li.badge.badge-primary {
  cursor: pointer;
  margin: 5px;
  font-size: 100%;
}

ul.checkboxes {
  list-style: none;
}

ul.tags {
  margin-top: -110px;
  margin-left: 85px;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>

<script src="https://cdn.jsdelivr.net/npm/[email protected] /cdn-cgi/l/email-protection/dist/vue.js"></script>

<div id='app'>
  <ul class="checkboxes">
    <li><input type="checkbox" id="jack" value="Jack" v-model="checkedNames">
      <label for="jack">Jack</label></li>

    <li><input type="checkbox" id="john" value="John" v-model="checkedNames">
      <label for="john">John</label></li>

    <li><input type="checkbox" id="mike" value="Mike" v-model="checkedNames">
      <label for="mike">Mike</label></li>
  </ul>
  <br/>
  <ul class="tags">
    <li @click="uncheck" class="badge badge-pill badge-primary" v-for="checkedName in checkedNames">
      {{ checkedName }}
    </li>
  </ul>
</div>

在这里,我无法使用它的标签取消选中选定的复选框,如上面的代码所示。

刚刚开始使用 VueJS,感谢帮助。


通过checkedName作为方法的参数并过滤数组而不是分配变量。

首先,添加checkedName论证uncheck:

<li @click="uncheck(checkedName)" ... v-for="checkedName in checkedNames">

然后使用该参数从checkedNames array:

this.checkedNames = this.checkedNames.filter(name => name !== checkedName);


下面演示。

new Vue({
  el: '#app',
  data: {
    checkedNames: [],
    checkedName: true
  },
  methods: {
    uncheck: function(checkedName) {
      this.checkedNames = this.checkedNames.filter(name => name !== checkedName);
      //this.checkedName = !this.checkedName;
    }
  }
})
li.badge.badge-primary {
  cursor: pointer;
  margin: 5px;
  font-size: 100%;
}

ul.checkboxes {
  list-style: none;
}

ul.tags {
  margin-top: -110px;
  margin-left: 85px;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>

<script src="https://cdn.jsdelivr.net/npm/[email protected] /cdn-cgi/l/email-protection/dist/vue.js"></script>

<div id='app'>
  <ul class="checkboxes">
    <li><input type="checkbox" id="jack" value="Jack" v-model="checkedNames">
      <label for="jack">Jack</label></li>

    <li><input type="checkbox" id="john" value="John" v-model="checkedNames">
      <label for="john">John</label></li>

    <li><input type="checkbox" id="mike" value="Mike" v-model="checkedNames">
      <label for="mike">Mike</label></li>
  </ul>
  <br/>
  <ul class="tags">
    <li @click="uncheck(checkedName)" class="badge badge-pill badge-primary" v-for="checkedName in checkedNames">
      {{ checkedName }}
    </li>
  </ul>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 VueJS 中取消选中 CheckBox 及其标签 的相关文章

随机推荐

  • 使用 movsd 让编译器复制字符

    我想在时间关键的函数中复制相对较短的内存序列 小于 1 KB 通常为 2 200 字节 CPU 端的最佳代码似乎是rep movsd 但是我不知何故无法让我的编译器生成此代码 我希望 我隐约记得看到过 使用 memcpy 可以使用编译器内置
  • 使用“严格引用”时不能使用字符串(“1”)作为子例程引用

    在对我尝试使用的各种事件做出反应的 Perl 守护进程中空对象模式 http en wikipedia org wiki Null Object pattern在 2 种情况下 通过创建匿名子例程 它应该只返回值 1 又名 true 请滚动
  • SQLAlchemy 与辅助表连接行为的关系在延迟加载和急切加载之间发生变化

    我已经使用 SQL Alchemy 几个月了 到目前为止 它给我留下了深刻的印象 我现在遇到了一个问题 这似乎是一个错误 但我不确定我是否在做正确的事情 我们在这里使用 MS SQL 通过表反射来定义表类 但是我可以使用内存 SQLite
  • maven部署到本地仓库

    有人可以告诉我如何将工件部署到本地存储库中以测试部署场景吗 问题是我们使用 nexus 作为远程存储库 我想知道是否可以使用自定义名称而不是 nexus 为我们提供的名称来部署我的工件 提前致谢 使用以下命令 mvn install ins
  • 使用正则表达式来匹配 IP 地址

    我正在尝试进行测试以检查 sys argv 输入是否与 IP 地址的正则表达式匹配 作为一个简单的测试 我有以下 import re pat re compile d 1 3 d 1 3 d 1 3 d 1 3 test pat match
  • SQL Server 围绕数字和下划线进行全文搜索

    使用 SQL Server 2012 通常使用 SQL Server 2008 R2 到 SQL Server 2016 这个问题是更具体的重新措辞SQL Server 全文索引意外结果 https stackoverflow com qu
  • 使用cache-control: no-store有什么缺点?

    我们希望 防止无意中释放或保留敏感信息 例如 在备份磁带上 并计划使用 HTTP 标头 Cache control no store 这样做有什么缺点 从规范来看 缓存似乎将继续运行 它只是不能使用非易失性存储 为了选择指定不存储的响应 我
  • 字符串到 xmlNode delphi(或如何将 xml 片段添加到 TXMLDocument)

    我有一些包含格式良好的 XML 的文本字符串 我希望能够 1 将这些字符串变成IXMLNodes然后 2 将它们附加到现有的XMLDocument 最好不声明新的XMLDocument第一的 这似乎不可能 有没有什么简单的方法可以完成等效的
  • 无法跟踪 sudo;报告有效 uid 不为零

    command bigxu bigxu ThinkPad T410 work lean sudo ls content shell pak leanote libgcrypt so 11 libnotify so 4 MACOSX reso
  • Newtonsoft 对象 → 获取 JSON 字符串

    我有一个由 Newtonsoft 的 JSON 序列化器创建的对象 我需要获取用于创建对象的 JSON 字符串 如何将对象序列化为简单的 JSON 字符串 尝试这个 public string jsonOut Returns JSON st
  • 由于 #ifdef,ctags 在带有不平衡大括号的源文件中被阻塞

    我在用ctags生成一个tags我正在处理的 C 项目的文件 但文件中缺少许多函数 这似乎是由于使用源文件中的大括号不平衡造成的 ifdef 一个 简化的 例子 include
  • 如何旋转 3D 散点图

    下面的代码使用 scatterplot3d 函数来运行高度 重量和体积的 3D 散点图 其中点是 1 6 之间的类值 角度目前为 45 度 我知道我可以通过改变角度来倾斜绘图 我应该使用什么代码将绘图向左或向右旋转 以便我可以提供绘图的多个
  • Android模拟器加载但不加载程序?

    我很确定我已经安装了所有必要的东西 我创建了 AVD 并尝试运行 SDK 中包含的示例应用程序之一 Jetboy 当我点击运行时 程序模拟器启动并最终加载 android 但没有应用程序启动 这是输出 2011 12 14 16 16 24
  • 标记为“已弃用”的 API 方法什么时候才会真正消失?

    我正在代码审查我的一位同事刚刚所做的更改 他添加了一堆调用Date toMonth Date toYear 和其他已弃用的Date方法 所有这些方法在 JDK 1 1 中均已弃用 但他坚持认为使用它们是可以的 因为它们还没有消失 我们正在使
  • C++ Console Application1.exe 已触发断点

    当我尝试设置时 cub SetArray cube 我收到一个错误 Console Application1 exe has triggered a breakpoint 我做错了什么 当我尝试调试时cub gt cubesarray我得到
  • 合并除关键字段之外的所有相同行,并使关键字段成为一个范围[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我看了很多帖子 但还没有找到我要找的东西 我不确定如何获取以下示例数据 host1 input nic1 ip1 ip2 PROT 3
  • Android adb shell am startservice:未找到错误

    我正在尝试从 adb shell 启动该服务 已经有类似的问题了 如何从 adb shell 启动和停止 android 服务 https stackoverflow com questions 7415997 how to start a
  • 关于Oracle解释计划中成本的问题

    当 Oracle 估算某些查询的 成本 时 它实际上会查看表中的数据量 行 吗 例如 如果我对员工进行全表扫描 查找 name Bob 它是通过计算现有行数来估计成本 还是始终是设定成本 成本优化器使用段 表和索引 统计信息以及系统 CPU
  • Python:对象到str的隐式转换?

    给出以下代码 class A def init self self b B def repr self return a format self b return a return a TypeError Can t convert B o
  • 在 VueJS 中取消选中 CheckBox 及其标签

    我试图取消选中在 VueJs 中使用其标签选中的复选框 DEMO new Vue el app data checkedNames checkedName true methods uncheck function this checked