代码片段未正确加载
Code snippet not loading properly
我试图在从数据库中检索到相应的数据 ID 后将评论片段添加到网页。不幸的是,如果我添加如下所示的代码片段,该代码片段将无法正常工作。如果代码段在 html 中被硬编码但如果我将其添加到 javascript 中或者如果我将代码段不带 data-id 然后尝试附加正确的 data-id 属性则代码段工作正常id.
我尝试在 div 位置旁边的脚本中加载对数据库的 ajax 调用,然后简单地使用 document.write()
但没有成功。正在使用的代码段是来自 Mobials.
的评论代码段
非常感谢帮助。
<div id="mobials"> </div>
<script type="text/javascript" src="//api.mobials.com/assets/js/api/v1.js"></script>
<script type="text/javascript" src="https://mobials.com/assets/js/api/review.min.js"></script>
function Submit() {
if (validateInputs()) {
$.ajax({
type: "GET",
url: "@ViewBag.urlApi" +"LocationDetails?zipcode=" + $("#ZipCodeLoc").val() + "&format=JSON&authoriazation={"+"@ViewBag.ApiKey"+"}",
dataType: "jsonp",
traditional: true,
success: function (data) {
$("#events").empty();
$("#logos").empty();
$("#openingHours").empty();
locationDetails = JSON.parse(data);
//Customer Reviews
var isMobial = false;
$.each(locationDetails.Reviews, function (key, value) {
if(key == "Type" && value == 1){
isMobial = true;
$("#consumerAffairs").hide();
}
if(key == "ReviewCode" && isMobial){
var mob = document.getElementById("mobials");
mob.innerHTML += '<div class="mobials-root" data-id="'+value.reviewcode+'" data-language="en" data-type="badge" data-size="200"></div>';
}
});
}};
}
}
编辑:我的这一行。html:
<div class="mobials-root" data-id="someId" data-language="en" data-type="badge" data-size="200"></div>
加载时看起来像这样:
<div class="mobials-root" data-id="someId" data-language="en" data-type="badge" data-size="200" data-tracker="1" id="mobial-root-1"><img src="https://s3.amazonaws.com/mobials.com/api/badges/read_reviews/en/174_174_4.7_70.png"></div>
您不能将 document.write()
与 ajax 调用一起使用。
document.write()
仅当文档 打开 时才有效 "as expected"。一旦浏览器识别出文档已完全加载,文档就会 关闭。
对 document.write()
的后续调用将 替换 文档而不是附加到文档。
编辑:但是查看您的代码,我根本没有看到 document.write()
。
我试图在从数据库中检索到相应的数据 ID 后将评论片段添加到网页。不幸的是,如果我添加如下所示的代码片段,该代码片段将无法正常工作。如果代码段在 html 中被硬编码但如果我将其添加到 javascript 中或者如果我将代码段不带 data-id 然后尝试附加正确的 data-id 属性则代码段工作正常id.
我尝试在 div 位置旁边的脚本中加载对数据库的 ajax 调用,然后简单地使用 document.write()
但没有成功。正在使用的代码段是来自 Mobials.
非常感谢帮助。
<div id="mobials"> </div>
<script type="text/javascript" src="//api.mobials.com/assets/js/api/v1.js"></script>
<script type="text/javascript" src="https://mobials.com/assets/js/api/review.min.js"></script>
function Submit() {
if (validateInputs()) {
$.ajax({
type: "GET",
url: "@ViewBag.urlApi" +"LocationDetails?zipcode=" + $("#ZipCodeLoc").val() + "&format=JSON&authoriazation={"+"@ViewBag.ApiKey"+"}",
dataType: "jsonp",
traditional: true,
success: function (data) {
$("#events").empty();
$("#logos").empty();
$("#openingHours").empty();
locationDetails = JSON.parse(data);
//Customer Reviews
var isMobial = false;
$.each(locationDetails.Reviews, function (key, value) {
if(key == "Type" && value == 1){
isMobial = true;
$("#consumerAffairs").hide();
}
if(key == "ReviewCode" && isMobial){
var mob = document.getElementById("mobials");
mob.innerHTML += '<div class="mobials-root" data-id="'+value.reviewcode+'" data-language="en" data-type="badge" data-size="200"></div>';
}
});
}};
}
}
编辑:我的这一行。html:
<div class="mobials-root" data-id="someId" data-language="en" data-type="badge" data-size="200"></div>
加载时看起来像这样:
<div class="mobials-root" data-id="someId" data-language="en" data-type="badge" data-size="200" data-tracker="1" id="mobial-root-1"><img src="https://s3.amazonaws.com/mobials.com/api/badges/read_reviews/en/174_174_4.7_70.png"></div>
您不能将 document.write()
与 ajax 调用一起使用。
document.write()
仅当文档 打开 时才有效 "as expected"。一旦浏览器识别出文档已完全加载,文档就会 关闭。
对 document.write()
的后续调用将 替换 文档而不是附加到文档。
编辑:但是查看您的代码,我根本没有看到 document.write()
。