如此简单的JS程序是怎么了??

luhaixing 2008-09-21 03:11:01
一段用JS程序来生成另一段JS程序:
<script>
tmp = "<script>alert('kkkk')</script>";
alert(tmp)
</script>
我记得以前类拟的确定是可以的,今天是怎么了,只要变量 tmp中出现"</script>",就不能运行了,但IE又不报错
...全文
133 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
luhaixing 2008-09-21
  • 打赏
  • 举报
回复
上面写错了,是1楼兄弟
luhaixing 2008-09-21
  • 打赏
  • 举报
回复
2楼兄弟,你这个我也想到了,其实这个问题是从我的另一个实际问题中抽象出来的,这个“</script>"是从数据库中读出来的,原串是这样的“<script src='.................'></script>"
我原来弄过一个程序是可以能过script来生成另一个程序,而且代码中出现过如:
<script>
var str="";
str += "<script>"
str += "function test(){"
str += " alert('kkkk')"
str += "}"
str += "test();"
str += "</script>"
document.write(str)
</script>
(曾经就用过类似这一段的,并且test()执行成功了的)
这回可被这个搞大了头
yurengang 2008-09-21
  • 打赏
  • 举报
回复
帮顶
zhihuixiaole 2008-09-21
  • 打赏
  • 举报
回复
scrip嵌套?太有才了
varlj 2008-09-21
  • 打赏
  • 举报
回复
改成这样就好了
var tmp = "<script>alert('kkkk')</"+"script>";
alert(tmp)

至于原因……据说是解析器看到连在一起的script当成代码段了
fosjos 2008-09-21
  • 打赏
  • 举报
回复
<script>
<!--
...
//-->
</script>
这样写一举多得

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧