Php 尝试编写js会使整个页面变为空白

Php 尝试编写js会使整个页面变为空白,php,javascript,jquery,html,Php,Javascript,Jquery,Html,当我使用document.write时,整个页面变为空白,只显示广告 function __adthis(id) { $.getJSON('banner.php', function (data) { var adNum = Math.floor(Math.random() * data.ban.length); document.write("<SCRIPT TYPE='text/javascript'> SRC='+data.ban[0].

当我使用document.write时,整个页面变为空白,只显示广告

function __adthis(id) {
    $.getJSON('banner.php', function (data) {
        var adNum = Math.floor(Math.random() * data.ban.length);
        document.write("<SCRIPT TYPE='text/javascript'> SRC='+data.ban[0].link+'><\/SCRIPT>");
    });
}
function\uuuu adthis(id){
$.getJSON('banner.php',函数(数据){
var adNum=Math.floor(Math.random()*data.ban.length);
document.write(“SRC='+data.ban[0].link+'>”;
});
}
这是一次考验,, 这是一次考验,, 这是一次考验,, 这是一次考验,

<div id="res"><script>`__adthis();`</script></div>
`uu adthis()`

不要使用
文档。编写
。相反,使用DOM方法创建
元素并将其添加到div:

var e = document.createElement('script');
e.setAttribute('type', 'text/javascript');
e.setAttribute('src', data.ban[0].link);
document.getElementById('res').appendChild(e);
HTML


JavaScript

function __adthis(id){
    $.getJSON('banner.php', function(data) {
        var adNum = Math.floor(Math.random()*data.ban.length);
        $("#ad_goes_here").html("<SCRIPT TYPE='text/javascript' SRC='+data.ban[0].link+'><\/SCRIPT>");
    });
}
function\uuuu adthis(id){
$.getJSON('banner.php',函数(数据){
var adNum=Math.floor(Math.random()*data.ban.length);
$(“#ad#u goes#u here”).html(“”);
});
}

关于
document.write()
无法按预期工作的原因,请附带说明。定义如下:

将文本字符串写入文档 由open()打开的流

委员会补充说:

正在写入已创建的文档 加载时未调用document.open() 将自动执行 文档。打开呼叫。一旦你 写完后,建议 调用document.close(),告诉 使用浏览器完成页面加载。 您编写的文本将被解析为 文档的结构模型

换句话说,在呈现文档后,使用
document.write()
会触发以下操作:

打开文档流进行写入。如果 目标中存在文档,此 方法将其清除


感谢这一点,它将在未来对我有所帮助,但我仍然收到与以前相同的问题:(相同的问题意味着页面再次变为空白?请查看脚本源代码,即
data.ban[0]。link
包含的内容。我猜该脚本再次包含
文档。write
{“ban”:[{“link”:“http:\/\/ad.xtendmedia.com\/st?ad_type=ad&ad_size=300x250§ion=id”,“title:“test”}]}”如果在浏览器中打开该链接,您将看到它是另一个使用
文档的JS文件。write
。不幸的是,这不再适用于当前标准。请查看是否可以从提供商处获得更新的广告代码。
function __adthis(id){
    $.getJSON('banner.php', function(data) {
        var adNum = Math.floor(Math.random()*data.ban.length);
        $("#ad_goes_here").html("<SCRIPT TYPE='text/javascript' SRC='+data.ban[0].link+'><\/SCRIPT>");
    });
}