未选中删除类选择选项
当我从选择框中选择某些内容时,它会向该类添加一个类
这样选择的选项:
$( 'div#tabs input[type="text"], select option:selected, input:checked, textarea' ).addClass('takethis');
但是当我选择一个不同的选项时,它不会从我第一次选择的选项中删除类takethis
。 我怎么强迫这个?
从所有未选择的选项中删除类:
$("select option:not(:selected)").removeClass("takethis");
然后添加到选定的一个:
$("select option:selected").addClass("takethis");
您可以像这样使用removeClass :
$('#tabs').find('option').removeClass('takethis');
不过,我不确定你要做什么。 这段代码:
$('div#tabs input[type="text"], select option:selected, input:checked, textarea').addClass('takethis');
抓取所有文本字段, 所有选择的选定选项, 所有选中的字段和所有 textareas,并将类takethis
添加到它。 那是你想做的吗?
编辑我看到你想要做什么。 如果是这样的话,为什么不这样做呢?
var table = $(''); $('div#tabs :input').each(function() { var val = $.trim($(this).val()); var name = $(this).attr('name'); if(val) { var td1 = $('').html(name); var td2 = $(' ').html(val); $('').attr({ type: 'hidden', name: name }).appendTo(td2); $(' ').append(td1).append(td2).appendTo(table); } }); $('#4tab').append(table);
这不是更简单,还是我错过了这里的要求?
您需要在之前选择的项目上调用removeClass
。