Javascript ajax响应文本显示为文本,而不是html
我有以下问题 “我的表”包含显示有关文章的简单信息的行。如果单击标签,将插入一个新的Javascript ajax响应文本显示为文本,而不是html,javascript,html,ajax,xmlhttprequest,Javascript,Html,Ajax,Xmlhttprequest,我有以下问题 “我的表”包含显示有关文章的简单信息的行。如果单击标签,将插入一个新的 此时将显示信息。但问题是,它会像在编辑器中查看html文档一样显示 像这样: 无标题文档…… 而不是像通常那样“翻译”成html 我使用的代码是: function doDetail(articlenr) { if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); } else {
此时将显示
信息。但问题是,它会像在编辑器中查看html文档一样显示
像这样:
无标题文档……
而不是像通常那样“翻译”成html
我使用的代码是:
function doDetail(articlenr)
{
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiceXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
var partr = document.getElementById("tr"+articlenr);
var newtr = document.createElement("TR");
var newtd = document.createElement("TD");
var content = document.createTextNode(xmlhttp.responseText);
newtr.setAttribute('id', "det"+articlenr);
newtd.colSpan = 8;
newtd.appendChild(content);
newtr.appendChild(newtd);
partr.parentNode.insertBefore(newtr,partr.nextSibling);
}
}
xmlhttp.open("GET","showdetail.php?nr="+articlenr,true);
xmlhttp.send();
}
如何解决这个问题
ajax响应文本显示为文本,而不是html
是的,您明确地使用这一行:
var content = document.createTextNode(xmlhttp.responseText);
…然后将该行附加到newtd
如果希望将文本解析为HTML,可以将其分配给元素的innerHTML
属性。例如:
newtd.innerHTML = xmlhttp.responseText;
替换newtd.appendChild(内容)
widthnewtd.innerHTML=xmlhttp.responseText代码>谢谢。但是我对“newtd.appendChild(内容)”的处理?只需删除?@user3108507:是的,你根本不需要内容的东西。请注意,
部分和
标记将被忽略。嗯..我认为这些都不需要…这些是由Dreamweaver自动创建的…但是如果被忽略…样式表链接为什么工作?仅供参考,您有一个输入错误:acticeXObject
应该是ActiveXObject
。哦…谢谢你..很高兴知道..Firebug没有看到这个输入错误:如果执行该行,它只会导致错误,这只会发生在旧的IE版本上。好的。我会在我的网站完成后强制公司所有人使用Firefox。。。