【发布时间】:2018-01-09 11:05:48
【问题描述】:
当我选中任何一个复选框时,我会得到 li 中的值,如果我取消选中第一个复选框,然后选中第二个复选框,我想删除第一个复选框的文本/值,如下所示:
下面是我的代码:
$('input[type="checkbox"]').bind('change', function() {
var alsoInterested = '';
$('input[type="checkbox"]').each(function(index, value) {
if (this.checked) {
/*add*/ /*get label text associated with checkbox*/
alsoInterested += ($('label[for="'+this.name+'"]').html() + ', ');
}
});
if (alsoInterested.length > 0) {
alsoInterested = alsoInterested.substring(0,alsoInterested.length-2);
} else {
alsoInterested = '';
}
console.log(alsoInterested);
var li = $('<li>'+alsoInterested+'<li/>').appendTo('#list');
$("#ul").append(li);
});
$('li').click(function()
{
alert('test');
});
li
{
float:left;
width: auto;
background: #ccc;
margin:10px;
display:inline-block;
cursor: pointer;
}
li:hover::after {
content: 'x';
color: white;
margin: 10px;
cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id="bannanasChk" name="bannanasChk" value="N">
<label for="bannanasChk" class="light">Bannanas</label>
<input type="checkbox" id="carChk" name="carChk" value="N">
<label for="carChk" class="light">Car Monkeys</label>
<input type="checkbox" id="apesChk" name="apesChk" value="N">
<label for="apesChk" class="light">Apes</label>
<input type="checkbox" id="repairChk" name="repairChk" value="N">
<label for="repairChk" class="light">Car Repair</label>
<br>
<ul class="list-unstyled" id="list">
</ul>
【问题讨论】:
-
@Mr.x 我要数组了吗??
-
无论
array或value,如果您查看该主题或类似内容,您就会找到解决方案。
标签: javascript jquery html css checkbox