如果选中追加 var 否则删除 var
If checked append var else remove var
我正在尝试使用复选框输入的标签文本创建一个列表(跨度)。
它追加很好,但删除不起作用。
$('#device_type_list li input').change(function(){
var response = $('label[for="' + this.id + '"]').text();
var device = $('<span>' + response + '</span>');
if(this.checked){
$('#device_filter_summary').append(device);
} else {
$('#device_filter_summary').find(device).remove();
}
});
编辑:这里是 fiddle:http://jsfiddle.net/kirkbross/9jr3v5hq/
.remove() 不起作用是有原因的,因为您发现从 span 标记开始到结束的整个 span 标记是错误的。您只需要在 .find() 中找到“”标签,然后将其删除。喜欢::
$('#device_filter_summary').find('span').remove();
查找功能不适用于 html,例如“<span>Android</span>
”,您必须使用 .find("span:contains('Android')")。
请参阅 fiddle 此处 http://jsfiddle.net/ewkfLdsv/
$('#device_type_list li input').change(function(){
var response = $('label[for="' + this.id + '"]').text();
var device = $('<span>' + response + '</span>');
if(this.checked){
$('#device_filter_summary').append(device);
} else {
$('#device_filter_summary').find('span:contains("' + response + '")').remove();
}
});
我正在尝试使用复选框输入的标签文本创建一个列表(跨度)。 它追加很好,但删除不起作用。
$('#device_type_list li input').change(function(){
var response = $('label[for="' + this.id + '"]').text();
var device = $('<span>' + response + '</span>');
if(this.checked){
$('#device_filter_summary').append(device);
} else {
$('#device_filter_summary').find(device).remove();
}
});
编辑:这里是 fiddle:http://jsfiddle.net/kirkbross/9jr3v5hq/
.remove() 不起作用是有原因的,因为您发现从 span 标记开始到结束的整个 span 标记是错误的。您只需要在 .find() 中找到“”标签,然后将其删除。喜欢::
$('#device_filter_summary').find('span').remove();
查找功能不适用于 html,例如“<span>Android</span>
”,您必须使用 .find("span:contains('Android')")。
请参阅 fiddle 此处 http://jsfiddle.net/ewkfLdsv/
$('#device_type_list li input').change(function(){
var response = $('label[for="' + this.id + '"]').text();
var device = $('<span>' + response + '</span>');
if(this.checked){
$('#device_filter_summary').append(device);
} else {
$('#device_filter_summary').find('span:contains("' + response + '")').remove();
}
});