js在页面内执行并预览一段html代码,并且结果输出在指定div中该怎么实现呢?急!急!急!

<ahref='#'>排序</a></textarea><br><script>functionrunCode(obj)//定义一个运行代码的函数,{varcode=ob... <a href='#'>排序</a>
</textarea><br>
<script>
function runCode(obj) //定义一个运行代码的函数,
{
var code=obj.value;//即要运行的代码。
var newwin=document.getElementById("ph");//打开一个窗口并赋给变量newwin。
newwin.opener = null // 防止代码对论谈页面修改
newwin.document.write(code); //向这个打开的窗口中写入代码code,这样就实现了运行代码功能。
}
</script>
<div id="ph">
</div>
<a href="#" onclick="runCode(this.offsetParent.getElementsByTagName('textarea')[0])" value="运行代码">筛选</a>

我这个运行之后是新打开一个运行,不是在本页面中出现结果
展开
 我来答
好求知
2013-07-04 · TA获得超过6514个赞
知道大有可为答主
回答量:966
采纳率:80%
帮助的人:1164万
展开全部
类似于下面这样吗?new Function()这么方便的函数干嘛不用。

<script>
function runCode(obj)
{run=new Function(obj.value);
ph.innerText=run()}
</script>

<body>
<textarea>sum=2*3; return sum</textarea>
<button onclick="runCode(this.offsetParent.getElementsByTagName('textarea')[0])">运行代码</button>
<div id="ph" style="height:3em;margin:1em 10 10 0;border:solid 1 gray">
</div>
</body>
追问

排序

要是里面是一段html代码的话,就不能运行了
追答
html代码不叫执行,是显示效果。搞得我一开始还以为是执行js代码然后显示结果……用innerHTML就行了。

function runCode(obj) {ph.innerHTML=obj.value} 排序 运行代码
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式