Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.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_Html_Arrays - Fatal编程技术网

使用JavaScript获取元素的连接文本

使用JavaScript获取元素的连接文本,javascript,html,arrays,Javascript,Html,Arrays,我用getElementById尝试了一下,效果很好。但是现在我想对多个div使用相同的方法,所以我必须使用类。所以我把方法改为getElementsByClassName,现在它表示未定义 (当select中的某个选项发生更改时,将调用该函数。这将正常工作) HTML: 有没有一种方法可以不用jQuery来实现这一点?getElementsByClassName返回一个集合,所以循环 var titelfilms = document.getElementsByClassName("filmn

我用
getElementById
尝试了一下,效果很好。但是现在我想对多个
div
使用相同的方法,所以我必须使用类。所以我把方法改为
getElementsByClassName
,现在它表示未定义

(当select中的某个选项发生更改时,将调用该函数。这将正常工作)

HTML:


有没有一种方法可以不用jQuery来实现这一点?

getElementsByClassName
返回一个集合,所以循环

var titelfilms = document.getElementsByClassName("filmnaam");
for (var i = 0; i < titelfilms.length; i++) {
    var titels = titelfilms[i].innerHTML;
    console.log(titels);
}
var titelfilms=document.getElementsByClassName(“filmnaam”);
对于(变量i=0;i
titelfilms
是一个节点列表,您无法将节点列表的
innerHTML
作为一个整体,它包含对元素的多个引用,每个元素都有各自的属性

您可以循环遍历每个
innerHTML
并将其连接到一个变量上,也可以将返回元素的
innerHTML
添加到一个数组中,然后将它们添加到:

函数排序(排序方式){
var titelfilms=document.getElementsByClassName(“filmnaam”);
var titels=Array.prototype.map.call(titelfilms,function(el){
返回el.innerHTML;
}).加入(“”);
控制台日志(滴度);
}
排序()

跳街22号
里约2号

JQuery的每个值实际上都是一个集合,通常只有一个元素,这一点很容易忽略。当您自己编写更基本的JS时,您只需要识别哪些值将作为单个元素(
byId
)或节点列表(
byClassName
)返回,您将如何调用该函数?@pianoman99该函数已被调用谢谢,您帮了我的忙!是的,也是一个很好的解决方案。。。但对我来说有点难,因为我是一个程序员,无论如何,谢谢你!
function sorting(sortingway) {
  alert(sortingway.value);
  var titelfilms = document.getElementsByClassName("filmnaam");
  var titels = titelfilms.innerHTML;
  console.log(titels[0]);
}
var titelfilms = document.getElementsByClassName("filmnaam");
for (var i = 0; i < titelfilms.length; i++) {
    var titels = titelfilms[i].innerHTML;
    console.log(titels);
}