Javascript 如何修复未捕获的TypeError:无法读取属性';外层TML';空的
我有一个引导弹出脚本,当我点击按钮时,它会在java控制台中返回一个错误。因此,按钮显示良好,当我单击它时,我可以看到popover链接到的html文件的内容,但它会触发一个错误,在控制台中出现两次,显示: 未捕获的TypeError:无法读取null的属性“outerHTML” 我曾尝试用Javascript 如何修复未捕获的TypeError:无法读取属性';外层TML';空的,javascript,jquery,twitter-bootstrap,popover,Javascript,Jquery,Twitter Bootstrap,Popover,我有一个引导弹出脚本,当我点击按钮时,它会在java控制台中返回一个错误。因此,按钮显示良好,当我单击它时,我可以看到popover链接到的html文件的内容,但它会触发一个错误,在控制台中出现两次,显示: 未捕获的TypeError:无法读取null的属性“outerHTML” 我曾尝试用innerHTML替换outerHTML,但没有效果 有没有办法解决这个问题 <button type="button" data-templatefile="Text.html" class="btn
innerHTML
替换outerHTML
,但没有效果
有没有办法解决这个问题
<button type="button" data-templatefile="Text.html" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="top" style='float:right;margin-right:50px'>
My popover button
</button>
<script>
function loadContent(templateFile) {
return $('<div>').load(templateFile, function(html) {
parser = new DOMParser();
doc = parser.parseFromString(html, "text/html");
return doc.querySelector('h1').outerHTML + doc.querySelector('body').outerHTML;
})
}
$('[data-toggle="popover"]').popover({
html : true,
content : function() {
return loadContent($(this).data('templatefile'))
}
});
</script>
我的爆米花按钮
函数loadContent(templateFile){
返回$('').load(模板文件,函数(html){
parser=新的DOMParser();
doc=parser.parseFromString(html,“text/html”);
返回doc.querySelector('h1').outerHTML+doc.querySelector('body').outerHTML;
})
}
$('[data toggle=“popover”]')。popover({
是的,
内容:函数(){
返回loadContent($(this).data('templatefile'))
}
});
事实上,我已经通过在保存popover内容的链接html中添加一个。现在改为:
<body><h1>my text here</h1></body>
我的文本在这里
当我点击popover时,java控制台中不再出现错误。谢谢“我试过了…innerHTML”。为什么?错误消息明确指出,
doc.querySelector('h1')
为null
。请同时提供模板文件loadContent
返回什么?以及.popover
的content
参数应该是函数吗?错误消息明确指出,doc.querySelector('h1'))是空的
不,不是空的-为什么不能是doc.querySelector('body')
是空的:p