昨天,我问了同样的问题,到今天我更具体一点。我想将这些div值放入生成的链接中,因此链接就像:https://stackoverflow.com/value1 value2 value3
<div class="example">value 1</div>
<div class="example">value 2</div>
<div class="example">value 3</div>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
var x = document.querySelectorAll('.example');
var i;
for (i = 0; i < x.length; i++) {
x[i].innerText;
}
window.open('https://stackoverflow.com/'+x ,'_blank', "width=550, height=550");
}
</script>
我得到的只是https://stackoverflow.com/[object NodeList]
你能帮我解决这个问题吗?
答案 0 :(得分:1)
我得到的只是https://stackoverflow.com/[object NodeList]你能吗? 帮我解决这个问题?
由于x
仍然是nodeList
并且您没有为x
分配任何内容,因此您需要另一个累加器
var value = [];
for (i = 0; i < x.length; i++) {
value.push( x[i].innerText);
}
value = value.join(" "); //not sure why you need space delimited values
window.open('https://stackoverflow.com/'+value ,'_blank', "width=550, height=550");
答案 1 :(得分:0)
只要让x[i].innerText;
行自行返回innerText
的值,但关键是你不会将结果存储在任何地方。
在window.open()
函数中,x的值是一个对象而不是一个字符串。