关于javascript输出的问题

jsp页面上某地方是:




js脚本里的代码是这样子的:
function check(){
var dhtml="

";
dhtml+=""
dhtml+="
";
dhtml+="
";
dhtml+=" dhtml+="cript language='javascript'>alert("这里是内容");";
dhtml += " dhtml += "
";
nowPersonTable.outerHTML=dhtml;
}
为什么输不出去?换成别任何东西 都可以在页面上输出去了。
为什么javascript输不出去呢?
有什么办法直接触发这个事件,然后能将javascript的脚本写入到某处,可以直接运行。

4个回答

尝试很久 终于解决楼主的问题
[code="java"]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



无标题文档

var dhtml="<table id='nowPersonTable' width='100%' align='center'>"; dhtml+="<tr>" dhtml+="<td height='20' valign='top' colspan='4' bgcolor='#CCCCCC'>"; dhtml+="<div class='dtree' style='WIDTH:100%; HEIGHT:450; OVERFLOW:scroll;'>"; dhtml+="<s"; dhtml+="cript language='javascript'> alert('这里是');"; dhtml += "</scrip"; dhtml +="t>"; dhtml += "</div></td></TR></TABLE>"; var nowPersonTable = document.getElementById('nowPersonTable') //动态执行加载在el中的htmlcode 包括htmlCode中的js部分 var setOuterHTML = function (el, htmlCode) { var ua = navigator.userAgent.toLowerCase(); if (ua.indexOf('msie') >= 0 && ua.indexOf('opera') < 0) { htmlCode = '<div style="display:none">for IE</div>' + htmlCode; htmlCode = htmlCode.replace(/<script([^>]*)>/gi, '<script$1 defer>'); el.outerHTML = htmlCode; el.removeChild(el.firstChild); } else { var el_next = el.nextSibling; var el_parent = el.parentNode; el_parent.removeChild(el); el.outerHTML = htmlCode; if (el_next) { el_parent.insertBefore(el, el_next) } else { el_parent.appendChild(el); } } } setOuterHTML(nowPersonTable,dhtml);


[/code]
参考这里http://www.uml.org.cn/AJAX/201006232.asp

dhtml += "</scri"; 这里是不没拼对? :x

这代码写得...
不清楚意图,如果要我维护这段代码,我拍死他 :twisted:

dhtml += " [b]dhtml += "pt>";[/b]
dhtml += "";
nowPersonTable.outerHTML=dhtml;

其实我也赞同楼上的说法.

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!