Active Server Pages 错误 'ASP 0138'

本地运行没出现问题但是传到空间上就出现问题了%ActiveServerPages错误'ASP0138'嵌套的Script块/qcw/index2.asp,行28Scrip... 本地运行没出现问题但是传到空间上就出现问题了%Active Server Pages 错误 'ASP 0138'

嵌套的 Script 块

/qcw/index2.asp,行 28

Script 块不能放在另一个 Script 块内。

下面是源代码:<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>太平洋汽车网外包专题</title>
<link rel="stylesheet" href="http://www1.pcauto.com.cn/global/2008/css/ztGlobal.css" />

<link href="main.css" rel="stylesheet" type="text/css" />
<script class=" defer" src="http://www.pcauto.com.cn/ssi/js/zt/index.html" charset="gb2312" type="text/javascript"></script>

</head>

<body>
<div align="center">
<script src="http://www.pconline.com.cn/js/ivy.js"></script>

<!--专题默认栏目计数器 -->
<span class="spanclass">
<script>_cntUrl = "http://count.pcauto.com.cn/count.php?channel=1669&screen=" + screen.width + "*" + screen.height + "&refer=" + escape(document.referrer);
</script>
</span>
<!--文章计数器-->
<span class="spanclass">
<script language="javascript" src="http://acount.pcauto.com.cn/wzcount/artbrowse.php?groupname=汽车网&subgroupname=&id=846738&title=&response=1"></script>
</span>

<script type="text/javascript">
if(typeof window.header=='function') header();
else document.writeln("<script class=\" defer\" src=http://www.pcauto.com.cn/06fz/js/ztheader/index.html><\/script>");
</script>
这具体是什么问题呢?为什么传到空间上就不能显示了呢?
展开
 我来答
百度网友66a8d48e5
2009-08-18 · TA获得超过7687个赞
知道大有可为答主
回答量:3002
采纳率:12%
帮助的人:3904万
展开全部
问题出现在这一句上:
document.writeln("<script class=\" defer\" src=http://www.pcauto.com.cn/06fz/js/ztheader/index.html><\/script>");
因为本身这一句就是一个script标签的,所以不能将<script>再次放到其中,不管你是使用什么样的语言<script>块是不允许出现嵌套的.就算这样写(这是我遇到的一个错误):
<script type="VBSCRIPT" runat="server">
response.write "<script>alert(""1"");</script>"&vbcrlf
</script>
很明显外层是一个VBS运行在服务端的,要向客户端写入一个JS代码的,所以就直按这样写的,结果出现了一样的错误.

这一错误出现的根本原因是为防止出错,所以不允放出现<script>的嵌套,这只是为了防止,但检查的十分严格,就算一个工作在服务端一个工作在客户端都不行的.

其实解决的办法也是有的,它这个检查是防止<script>出错嵌套,而在运行后的文本流中不出现嵌套就可以了,所以从我的分析中我知道,文本流中不会出现嵌套,我就大胆的不让再检查了.所以更换了一下:
<script type="VBSCRIPT" runat="server">
response.write "<script"&">alert(""1"");</"&"script>"&vbcrlf
</script>
这样将<script>作为字符处理,躲过了检查,而使用代码生效的!当然,你也可以考虑使用这种方法,但不要将这一保存再写到<script>里边就行了!
比北极熊还熊
2009-08-18 · TA获得超过124个赞
知道小有建树答主
回答量:322
采纳率:0%
帮助的人:221万
展开全部
<script type="text/javascript">
if(typeof window.header=='function') header();
else document.writeln("<script class=\" defer\" src=http://www.pcauto.com.cn/06fz/js/ztheader/index.html><\/script>");

造成SCRIPT嵌套了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式