Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从元素数组中获取类列表_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 从元素数组中获取类列表

Javascript 从元素数组中获取类列表,javascript,jquery,arrays,Javascript,Jquery,Arrays,我有下面的数组,它包含许多选项元素,这取决于它是否有隐藏的类 var list = $('#condition option').not('.hidden'); 如何获得这些元素所具有的类的数组 我所尝试的: var list = $('#condition option').not('.hidden').attr('class'); 但是,这只返回与数组中最后一个元素关联的类。如注释中所建议的,使用JQuery的each函数 var list_condition = $('#conditi

我有下面的数组,它包含许多
选项
元素,这取决于它是否有
隐藏的

var list = $('#condition option').not('.hidden');
如何获得这些元素所具有的类的数组

我所尝试的:

var list = $('#condition option').not('.hidden').attr('class');

但是,这只返回与数组中最后一个元素关联的类。

如注释中所建议的,使用JQuery的each函数

var list_condition = $('#condition option').not('.hidden');
var list_class = []; // Creates an empty array

$(list_condition).each(function(index) {
  list_class.push($(list_condition)[index].attr('class')); // Pushes the element into the array
});

就像注释中建议的那样,使用JQuery的每个函数

var list_condition = $('#condition option').not('.hidden');
var list_class = []; // Creates an empty array

$(list_condition).each(function(index) {
  list_class.push($(list_condition)[index].attr('class')); // Pushes the element into the array
});

也许是这样的。该列表选择所有dom元素。
。每个
都会遍历它们

var list = $('#condition option').not('.hidden').attr('class');
$(list).each(function( index ) {
  var myClass = $(this).attr("class"); 
  console.log(myClass);
});

也许是这样的。该列表选择所有dom元素。
。每个
都会遍历它们

var list = $('#condition option').not('.hidden').attr('class');
$(list).each(function( index ) {
  var myClass = $(this).attr("class"); 
  console.log(myClass);
});
您可以使用.map():

您可以使用.map():

您可以使用函数来实现这一点

示例:

var list=$(“#条件选项”)。不(“.hidden”),
类别=[];
$(列表)。每个(函数(){
class.push($(this.attr('class'));
});
console.log(类)

一些选择
一些选择
一些选择
一些选择
一些选择
一些选择
一些选择
一些选择
您可以使用函数

示例:

var list=$(“#条件选项”)。不(“.hidden”),
类别=[];
$(列表)。每个(函数(){
class.push($(this.attr('class'));
});
console.log(类)

一些选择
一些选择
一些选择
一些选择
一些选择
一些选择
一些选择
一些选择

你只需要遍历每一项,你就不能得到
$(“#条件选项”)
并像
一样循环遍历它。每个
都像@Huangism所说的那样?
让listOfClasses=Array.from(document.queryselectoral(“#条件选项”).map(el=>el.getAttribute('class')).filter(cls=>!cls.match(/hidden/)一行,没有jquery。请停止在标题中添加jquery标记。看,你只需要浏览每一项,难道你不能获得
$(“#条件选项”)
并像
一样循环浏览它吗?每个
都像@Huangism所说的那样?
让listOfClasses=Array.from(document.querySelectorAll(“#条件选项”)).map(el=>el.getAttribute('class')。filter(cls=>!cls.match(/hidden/)一行,没有jquery。请停止在标题中添加jquery标记。查看良好,但您不需要使用
index
查看我的答案。良好,但您不需要使用
index
查看我的答案。
class
是保留关键字。不建议将其用作变量名。还需要修复函数
console.log(class)中的最后一行
class
是保留关键字。不建议将其用作变量名。还需要修复函数
console.log(class)中的最后一行@noclist很好,但是你应该使用一些东西来避免空格。请参见我的第二个示例,我使用
trim
/\s+/
来避免空格。例如,在这个元素中应用你的代码
它将不会像预期的那样工作,但是你应该使用一些东西来避免空格。请参见我的第二个示例,我使用
trim
/\s+/
来避免空格。例如,将您的代码应用于此元素
,它将无法按预期工作。