收录日期:2019/05/21 01:06:35 时间:2016/05/31 07:15:30 标签:ASP.NET
我的xsl模板非常复杂,里面有很多需要js的。本来(.htm时)都挺好的,
我加入了xsl语言,改成xsl文件后,当用它格式化一个xml文件时,出错。
就连

if(a>b){alert("liu")}
都出错。说什么:缺少')'

真的不知道该如何解决。。。

高手指点。
把javascript脚本放在xsl:comment和cdata里面,像下面那样
<SCRIPT LANGUAGE="javascript">
                    <xsl:comment><![CDATA[

function GetIEVersion()
{
try
{
if(!window.clientInformation)return false;
if(window.clientInformation.appName.toLowerCase()!="microsoft internet explorer")return false;
if(window.clientInformation.appVersion.toLowerCase().indexOf("msie")==-1)return false;
var a=window.clientInformation.appVersion.toLowerCase().split(";");
for(var i=0;i<a.length;i++)
{
a[i]=a[i].replace(" ","");
if(a[i].indexOf("msie")==0)
{
var version=a[i].substr(4,a[i].indexOf(".")-2);
return version;
}
}
}
catch(exception)
{
}
return false;
}

window.IEVersion=GetIEVersion();

if(parseInt(window.IEVersion)<6)document.write("<style>textarea.content { behavior:url('/Expert/xsl/tacontent.htc')}</style>");
function mailto1()
{
document.mailto.email.value='';
var tmpText=prompt('请输入您朋友的EMail:',document.mailto.email.value);
if(tmpText){
document.mailto.email.value = tmpText;
document.mailto.submit();
}
}

]]>//</xsl:comment>
                </SCRIPT>
你可以
<script>
<![CDATA[
if(a>b){alert("liu")}
]>
</script>

不过你要分清楚你的js文件在服务器端执行还是在客户端
你可以把你的全部内容贴来
下面的脚本,方里面就出错。就是有> 和 <的地方都出错
<script language="javascript">
var picN=-1
function first(){
picN=0
showPict();
}
function back(){
picN--
if(picN<0) picN=0;
document.albumlist.albumtitle.selectedIndex=picN+2;
showPict();
}
function forw(){
picN++
if(picN>0) picN=0
document.albumlist.albumtitle.selectedIndex=picN+2;
showPict();
}
function last(){
picN=sum_photo
showPict();
}
function showPict(){
switch (picN) {
case 0: CardCode="1099276339.jpg"; break; 

}
document.cardpict.src="http://loveimg.163.com/myphotoes/78/50/yangming_8888/"+CardCode;
}
function showALBUM() {
if (document.albumlist.albumtitle.selectedIndex>=2){
picN = document.albumlist.albumtitle.selectedIndex-2;
showPict();
}
}
function openPict()
{
if (picN==-1) { document.albumlist.albumtitle.selectedIndex=2;showALBUM();}
switch (picN) {
case 0: CardCode="1099276339.jpg"; break; 
 
}
srcIMG="http://loveimg.163.com/myphotoes/78/50/yangming_8888/"+CardCode;
var newWin=window.open(srcIMG,"myalbum","status=no,scrollbars=1,resizable=1,width=800,height=600");
}

</script>
我实在数据库中读出数据,然后用StringBuilder生成一个xml串,(一个元素一个元素的构造的),在xml串中引用了这个xsl用于格式化。最后用Response.Write(stringbuilder.ToString());

这种情况 xsl中的js在那里执行。
用了46539492(#我思故我在#) 的方法,还出错,不过错误不同了:
这次提示的错误是:语法错误

<script language="javascript">
<xsl:comment>
<![CDATA[
var picN=-1
function first(){
picN=0
showPict();
}
function back(){
picN--
if(picN<  0) picN=0;
document.albumlist.albumtitle.selectedIndex=picN+2;
showPict();
}
function forw(){
picN++
if(picN  > 0) picN=0
document.albumlist.albumtitle.selectedIndex=picN+2;
showPict();
}
function last(){
picN=sum_photo
showPict();
}
function showPict(){
switch (picN) {
case 0: CardCode="1099276339.jpg"; break; 

}
document.cardpict.src="http://loveimg.163.com/myphotoes/78/50/yangming_8888/"+CardCode;
}
function showALBUM() {
if (document.albumlist.albumtitle.selectedIndex>=2){
picN = document.albumlist.albumtitle.selectedIndex-2;
showPict();
}
}
function openPict()
{
if (picN==-1) { document.albumlist.albumtitle.selectedIndex=2;showALBUM();}
switch (picN) {
case 0: CardCode="1099276339.jpg"; break; 
 
}
srcIMG="http://loveimg.163.com/myphotoes/78/50/yangming_8888/"+CardCode;
var newWin=window.open(srcIMG,"myalbum","status=no,scrollbars=1,resizable=1,width=800,height=600");
}
]]>//</xsl:comment>
</script>  


up!
up
up
<script language="javascript">
<![CDATA[]>
</script>
即可
我已经更改了JS,以避免这种情况的发生。谢谢!
孟大哥是高手,还有思归,我经常读你们的文章,很有深度,实用性也非常强

如何用asp连接csv格式的数据库,并读取 清华大的visual C#.net高级编程和visual c#.net 中文版WEB服务开发基础这两本书怎么样 如何实现手写签名 各位大哥:关于DLink 我的主机是老主板,鼠标是梯形串口的,我想换成现在流行的小圆口的,听说转接口能实现但是兼容性不是很好,所以我就买了一块板卡,一头插 关于socket收发的10040错误。 大哥们~ 大家来看一看了^_^ 如何用“正则表达式“表示C语言中的注释,即:/* */? 急,急,急! 如何取得目前有多少内存可以使用??? 打印问题,高手请进! 如何用“正则表达式“表示C语言中的注释,即:/* */? 急,急,急! 要我做网管的Web界面,做过的人可以进来给点意见么? 用Jdom实现查询的方法,给出方案的,100分 哪位高手大哥愿意留给我个QQ号,我想请教一个SQL问题 Jb7中如何实现本地Jdatastore数据库连接功能? 求救:我得IE无法浏览CSDN的论坛了,详情请进!!! 那有林青霞早期的电影<流金岁月>下载,我愿100相赠!!!! 在JAVA中怎么与Excel进行交流,怎么与COM组件进行交流? delphi与数据库的连接! VB.NET的打包是对程序员是个灾难 不惜巨分相送以获取日本ARIB标准的下载地址,耗尽身家在所不惜 ========如何将foxpro的表(*dbf)转成ACCess的数据库(*.mdb)=================== 需要高手帮忙的问题!!好长时间了,无人能解决!!! 关于P2P原理的提问 hjf00005大侠,谢谢你的指教,请进来取分,聊表谢意. 如何改变Ehlib的TDBGridEh某一行的颜色 你们说这有什么区别???真是搞不懂! 不用的硬盘,不接数据线,只接电源,会不会有问题? 如何将quickreport从3.0.3升级到3.0.5