jQuery /标签输入 - 按内容选择元素
问题描述:
如果你能帮我解决我的问题,请谅解。我有20-30元件这样的一个:jQuery /标签输入 - 按内容选择元素
<div class="file file-unchosen">
<div class="file-name-title">
"File-title"
</div>
</div>
其中.file用于块的CSS的造型
,我已经bootstrap tags input list哪里可以存储选择了与功能文件:
$('.file').click(function() {
$(this).toggleClass('file-unchosen file-chosen');
function addWork(elem) {
var workname = $(elem).find('.file-name-title').text();
$('#chosen-works-list').tagsinput('add', workname);
};
addWork(this);
});
问题是,当我从标签输入列表中删除文件时,我无法理解如何使.file选择againg。现在,我在这样的事情中(不反正工作):
$('#chosen-works-list').on('itemRemoved', function(event) { //when tag is removed from tags list
var chosenWorks = [];
$('.file-chosen').each(function(i,elem) { //we take all of the chosen files
console.log(elem); //log them
chosenWorks.push($(elem).find('.file-name-title').text().toString());
}); //push them to array
var delWork = event.item; //define deleting tag
...and I don't know what to do next..
});
从理论上讲,下一步就要检查一下是否$的.text()等于$(文件选择.file名。) (delWork)并切换其类,但无法弄清楚如何做到这一点。
答
试试这个:
<div class="file file-unchosen" data-content="deleted-tag-content">
然后就可以像这样:
$('.file[data-content="'+ delWork +'"]').toggleClass('file-unchosen file-chosen');
不要毫不犹豫地使用数据属性,并通过他们的查询。