结合我的XSLT类的一个例子 - 1 ( js )

下面的代码是结合http://blog.csdn.net/cds27/archive/2006/05/08/712546.aspx 和http://blog.csdn.net/cds27/archive/2006/05/08/712497.aspx 两篇文章的一个例子。
也可以直接到http://cds.gameres.com/samples/SankOrange'sXslt_js.rar 下载代码。

HTM的代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Sank Orange's Xslt例子</title>
<script language="javascript" src="XsltClass.js"></script>
<script language="javascript">
var xmlFile="xml.xml", xslFile="xml.xsl";
var xslt=new XsltClass(xmlFile, xslFile);//可以直接在构造时,传入XML文件名和XSL文件名
/*
//另外一种方式:
var xslt=new XsltClass;
xslt.setXml(xmlFile);//或者xslt.loadXmlStr("<root>XML的字符串</root>");
xslt.setXsl(xslFile);
*/

function show() {
 xslt.setParam("Value", slt.value);//设置XSL参数
 divShow.insertAdjacentHTML("beforeEnd", xslt.output());
}
</script>
</head>

<body>
<p>输入要查询的值:
<select id="slt">
<option>选择X的值</option>
<option value="a'b&quot;c">a'b"c</option>
<option value="a'bc">a'bc</option>
<option value="ab&quot;c">ab"c</option>
</select>
</p>
<p align="center"><a href="javascript:show()">显示查询结果</a></p>
<div id="divShow" style="width: 90%; height: 200px; border: 1px solid black; padding: 5px; margin: 10px; font-size: large; "/>
</body>
</html>

-------------------------------------------------

xml.xml:

<?xml version="1.0" encoding="gb2312"?>
<?xml-stylesheet type="text/xsl" href="xml.xsl"?>
<root>
 <x id="x1">a'b"c</x>
 <x id="x2">a'bc</x>
 <x id="x3">ab"c</x>
</root>

-----------------------------------------------

xml.xsl:

<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes"/>
 <xsl:param name="Value"/>
 <xsl:template match="/">
  <xsl:variable name="Result" select="//x[text()=$Value]/@id"/>
  <xsl:choose>
   <xsl:when test="$Result!=''">你要查询的X的id:<xsl:value-of select="$Result"/></xsl:when>
   <xsl:otherwise>没有符合条件的X</xsl:otherwise>
  </xsl:choose>
  <hr/>
 </xsl:template>
</xsl:stylesheet>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值