我有一个 javascript 代码并返回 [object NodeList]
我该如何纠正这个问题
请帮我
<!DOCTYPE html>
<html lang="en" class="no-js">
<head lang="en">
<script>
function downloadDiv(filename, elementId, mimeType) {
var elementHtml = document.querySelectorAll('div1');
var link = document.createElement('a');
mimeType = mimeType || 'text/plain';
link.setAttribute('download', filename);
link.setAttribute('href', 'data:' + mimeType + ';charset=utf-8,' + encodeURIComponent(elementHtml));
link.click();
}
var fileName = 'divContents.html';
</script>
Run Code Online (Sandbox Code Playgroud)
var elementHtml = document.querySelectorAll('div1');
Run Code Online (Sandbox Code Playgroud)
document.querySelectorAll返回一个NodeList对象,它是 DOM 节点的集合。
您可能需要其中第一个的 HTML 内容:
var elementHtml = document.querySelectorAll('div1')[0].innerHTML;
Run Code Online (Sandbox Code Playgroud)
如果可能有多个(或者实际上少于一个!),明智的选择是将其作为循环来执行:
var elementHtml = [].map.call(document.querySelectorAll('div1'), function(el) {
return el.innerHTML;
}).join();
Run Code Online (Sandbox Code Playgroud)