我正在尝试通过 $http 在页面上获取和输出 JSON-LD 数据,如下所示:
angular.element(document).ready(function(){
$http({
url:'/product-init',
method:'POST',
data:{product_id:$scope.product_id}
}).then(function(d){
$scope.product= d.data;
$scope.jsonLd={
"@context":"http://schema.org",
"@type":"Product"
// atc.....
}
$('#json-ld-content').html(JSON.stringify($scope.jsonLd));
},function(d){
alert('product init error');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script type="application/ld+json" id="json-ld-content"></script>
我可以在网络检查器中看到输出(在“元素”选项卡上),但是当我运行 [check], 1时它什么也没显示。
通过javascript创建脚本标签然后设置 html 也无济于事。我还找到了通过 AJAX 加载 JSON-LD 的示例:它工作正常。
我的案例和上面的例子有什么区别?如何修复我的代码?提前致谢。