【发布时间】:2018-05-16 08:27:30
【问题描述】:
我正在使用车把模板。它存储如下数据
function showResult(result) {
document.querySelector('#result').innerText += result;
}
showResult("Using .html() " + $('script#myId').html())
showResult("Using .text() " + $('script#myId').text())
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script id="myId" class="myClass" type="text/x-handlebars-template">
<div>My HTML content</div>
</script>
<div id="result"></div>
我正在尝试以$('script#myId').html() 获取模板数据。返回“”。
如果我使用$('script#myId').text(),它会返回文本格式的数据,但我需要 HTML 格式的数据。
发生在 Firefox 中,仅在 chrome 中可以正常工作。
谢谢
【问题讨论】:
-
你试过不同的浏览器吗?你能告诉我们你怎么称呼
$('script#myId').html()吗? -
我在 Firefox 上面临这个问题,只在 chrome 上工作。让我也编辑它。
-
我猜
<script></script>的内容在 DOM 之外,这就是为什么你不能得到 .html() 但 .text() -
在 chrome 和 firefox 中试过
console.log('text: ', $('script#myId').text());和console.log('html: ', $('script#myId').html());,但我没有像你这样的问题。 $('script#myId').html() 效果很好。 -
@wicky,这将返回“未定义”
标签: jquery html handlebars.js