最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
使用xsl筛选记录
时间:2022-06-30 09:27:39 编辑:袖梨 来源:一聚教程网
最近使用xml DataIsland配合javascript 将标准的html表格TABLE扩展成了一个类似windows下的MSFlexGrid一样的具有丰富客户端行为的网格,在更新数据时,为了减少提交上传的xml文件的大小,便将原先绑定的数据集添加了一个标记节点,值只有三种NEW,UPDATE,DEL,分别用来表示其父节点是新增的,还是修改过的,或者是删除过的,并且在通过xmlhttp上传之前,将所有添加了的纪录筛选出来。在处理这个筛选的过程中,我先使用了javascript模拟了一个筛选算法,但是在数据岛数据很大时,筛选就很慢,于是左思右想,配合高人指点,使用xsl来处理了这个数据岛,用很快的速度就实现了大量数据的筛选过程。
我的xml结构是这样的
<root>
<record>
<field1>...</field1>
<field2>...</field2>
<field3>...</field3>
...
<fieldn>...</fieldn>
<record>
...
<record>
<field1>...</field1>
<field2>...</field2>
<field3>...</field3>
...
<fieldn>...</fieldn>
<RecordFlag>...</RecordFlag>
<!--做了手脚的纪录节点-->
<record>
...
</root>
xsl文件如下,名称为“select.xsl“:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.**w*3.org/1999/XSL/Transform">
<xsl:output method = "xml" omit-xml-declaration = "yes" indent = "yes"/>
<xsl:template match="node()">
<xsl:copy>
<xsl:for-each select="...">
<!--这里就是对应每个记录的节点名称,这里可以为record-->
<xsl:if test="RecordFlag">
<!--这里就是要筛选出来的标记节点名称,就是RecordFlag-->
我的xml结构是这样的
<root>
<record>
<field1>...</field1>
<field2>...</field2>
<field3>...</field3>
...
<fieldn>...</fieldn>
<record>
...
<record>
<field1>...</field1>
<field2>...</field2>
<field3>...</field3>
...
<fieldn>...</fieldn>
<RecordFlag>...</RecordFlag>
<!--做了手脚的纪录节点-->
<record>
...
</root>
xsl文件如下,名称为“select.xsl“:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.**w*3.org/1999/XSL/Transform">
<xsl:output method = "xml" omit-xml-declaration = "yes" indent = "yes"/>
<xsl:template match="node()">
<xsl:copy>
<xsl:for-each select="...">
<!--这里就是对应每个记录的节点名称,这里可以为record-->
<xsl:if test="RecordFlag">
<!--这里就是要筛选出来的标记节点名称,就是RecordFlag-->
相关文章
- 新视觉影院官网电视剧如何进入-新视觉影院2026版官网一键跳转 01-19
- 魔道祖师漫画在线观看入口在哪?免费地址及平台推荐 01-19
- 豚豚剧官网在线观看入口-豚豚剧2026最新版高清在线观看 01-19
- 豚豚剧官网在线观看入口链接分享-豚豚剧2026最新资源在线看 01-19
- twitch官网入口地址-twitch网页版登录 01-19
- 追剧网官网高清免费在线观看-最新电视剧电影免下载 01-19