我试图找到包含文本iconGroup
的类名的确切值,并且我能够使用以下命令获取类名数组:
var chosenIconClassArray = $('.selectedGroupIcon').attr('class').split(/\s+/);
console.log(chosenIconClassArray);
$.each(chosenIconClassArray, function(index, item) {
console.log(item);
});
这给出了一个控制台输出:
["createAGroupIconList", "inlinelist", "ram", "left", "iconGroup20", "selectedGroupIcon"]
createAGroupIconList
inlinelist
ram
left
iconGroup20
selectedGroupIcon
我已经尝试了一些与此相关的内容来查找它iconGroup
,但它不起作用:
if (item ^= 'iconGroup') {
console.log($(this));
}
目标是能够告诉类数组包含值iconGroup20
(或任何数字,如1,2,3,4等),然后我可以将其添加到另一个元素以更新它图标。
如何搜索该数组,然后找到其中的iconGroup
类?
答案 0 :(得分:2)
您是否正在寻找能够找到与'iconGroup ##'格式匹配的项目的内容?如果是这样,尝试这样的事情:
function getIconGroup(class_array) {
var iconGroup = false;
$.each(class_array, function(index, item) {
if item.match(/^iconGroup[0-9]+$/) {
iconGroup = item;
}
});
return iconGroup;
}
已更新为充当功能,因此您可以使用getIconGroup(ChosenIconClassArray)
。
答案 1 :(得分:1)
JavaScript有String.indexOf
方法。它将返回您给它的字符串的索引,如果找不到该字符串,则返回-1。
以下代码应该为您提供您希望的课程。
var chosenIconClassArray = $('.selectedGroupIcon').attr('class').split(/\s+/),
foundClass;
$.each(chosenIconClassArray, function(index, item) {
if (item.indexOf('iconGroup') > -1) {
foundClass = item;
}
});
变量foundClass
应包含完整的类。