首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查是否选中了复选框?

如何检查是否选中了复选框?
EN

Stack Overflow用户
提问于 2019-08-14 11:08:08
回答 2查看 645关注 0票数 1

我想在检查是否选中了复选框之后,将一些文本添加到<span>中。页面上有多个复选框,我只想追加一次<span>。我看到的所有解决方案似乎都不适合我。我试着检查一下:

代码语言:javascript
复制
if ($('input:checkbox[name="skills"]').prop('checked')) {
   $('#filter-7').append($('#headingSkills a').text());
}

和:

代码语言:javascript
复制
if ($('input:checkbox[name="skills"]').is(':checked')) {
    $('#filter-7').append($('#headingSkills a').text());
}

这两种方法似乎都不起作用,而且我不想将append()添加到我的change函数中,因为它会多次追加span,而且我只希望在选中一次复选框时将其追加。

以下是我的更改功能:

代码语言:javascript
复制
$('input:checkbox[name="skills"]').change(function () {
    var values = $('input:checkbox[name="skills"]:checked').map(function () {
      return '<span><button class="remove-selection" value="' + this.value.trim() + '"></button> ' + this.value.trim() + '</span>';
    }).get();

    $('#filter-7').append($('#headingSkills a').text());

    $('#filter-7-result').empty().append(values);
});

以下是我的HTML:

代码语言:javascript
复制
<h4 class="panel-title">
    <a role="button" id="button-7" data-toggle="collapse" data-parent="#accordion" href="#skillsCollapse"
                   aria-expanded="true" aria-controls="skillsCollapse">
                    Skills
    </a>
</h4>

<label>
    <input type="checkbox" name="skills" value="Accounting">Accounting</label>
<label>
    <input type="checkbox" name="skills" value="Administration">Administration</label>
<label>
    <input type="checkbox" name="skills" value="Budgeting">Budgeting</label>
<label>

当有人单击上面的一个复选框时,我希望将按钮标题(技能)附加到:

<span id="filter-7"></span>

我知道这是一个常见的问题,但我尝试过的一切似乎都没有用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-14 13:20:51

问题在于每次运行此逻辑时都会追加文本节点。如果您只希望在选择每个值时只显示一次值,请使用text()而不是append()

代码语言:javascript
复制
$('#filter-7').text($('#headingSkills a').text());
票数 1
EN

Stack Overflow用户

发布于 2019-08-14 11:15:22

使用is(':checked')检查是否选中复选框

代码语言:javascript
复制
$('.check').change(function(e){
 var text='';
   $('.check').each(function(e){
       if($(this).is(':checked'))
       text='checked';
   })
   $('.content').html(text) 
})
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<span class="content"></span>
<input type="checkbox" class="check">one
<input type="checkbox" class="check">two
<input type="checkbox" class="check">three
<input type="checkbox" class="check">Four

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57493519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档