admin管理员组文章数量:1566678
2024年7月22日发(作者:)
在Domino中利用XSL和XML输出格式数据列表
关键字:Domino、XSL、XML、数据列表
概述
在Domino环境中输出视图文档列表的有很多种方法,比如有嵌入视图方法、有XML方法、
有利用视图的HTML属性方法,以上这些方法只能用固定的一种样式显示视图数据,如果对
于同一数据可按照不同样式进行输出需要考虑使用其他方式,这里介绍的就是利用XSL+
XML技术完全在客户端利用Javascript语言来实现多样式数据的展示,实现系统的分页等
功能。
XSL介绍
---XML的样式表
HTML网页使用预先确定的标识(tags),这就是说所有的标记都有明确的含义,例如
是
另起一行
是标题字体。所有的浏览器都知道如何解析和显示HTML网页。
然而,XML没有固定的标识,我们可以建立我们自己需要的标识,所以浏览器不能自动解
析它们,例如
选中 | |
select="text" /> |
COLOR="6D0202">目前无任何信息! |
/>?opendocument
select="@unid"/>
编写完成后存成文件扩展名为xsl类型的文件,然后在数据库资源文件中引入该文件。
注意地方:
1. 1首先在XSL文件中声明字符编码
1.2 指定XSL文件的版本号以及所引用的XSL标准,如果没有此句,XSL文件不能被正
常解析。
xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:myNS="urn:myNameSpace"> 2. 解析XML视图数据 在Domino的Script库中定义解析XML视图数据和XSL数据的代码,最后通过XSL 的转换功能,把XML格式数据转换成HTML格式数据进行最终显示。 这里把主要代码整理出来,供参考。 var HTMLresults; //表单中以xml方式显示的数据库内容 var source; //由视图转化的xml文件 var style; //xsl文件,数据显示时应用的具体样式文件 var sortColumn; //排序列 var rowsnum //每页显示的行数,可以通过表单rowsval域自定义 var startnum=1 //视图搜索起始数目 var viewname //当前视图的名称 var pagenum //当前类别文档总页数 var catField //类别选择框seloption对象 var totaldoc //显示当前类别文档总数 var optiontext //类别选择框seloption的选项text值 var optionval //类别选择框seloption的选项value值 var htmlstr //条目统计文本 var pagestathtml //页数统计文本 var colwidthval //列的显示宽度,由colwidth确定 var tableheadtext //当文档为空时表头显示文本,由tablehead确定 var typelen //类别总数标志 var typetext //当前类别 //视图表单的装载 //装载文档,确定显示格式 function loadXML() { //取得各相关显示数据 catField = [0].seloption viewname= colwidthval=(",") tableheadtext=(",") rowsnum= typestr= typelenstr= source = new ActiveXObject(""); style = new ActiveXObject(""); ystatechange=stateChangeHandler //输出装载状态 = false; = false; teOnParse = false; eExternals = false; veWhiteSpace = false; typelen=0 setpath="" if ((typestr!=""&&typelenstr=="0")||(typestr==""&&typelenstr=="0")) { if (typestr ==""&&typelenstr=="0") tmpstr="./"+viewname+"?ReadViewEntries&CollapseView" if (typestr!=""&&typelenstr=="0") tmpstr="./"+viewname+"?ReadViewEntries&RestrictToCategory="+typestr (tmpstr); if(getReadyState()){ (setpath); if(ode != 0) { showError(); } else{ if (!mentsByTagName("viewentries")[0].attributes[0]){ element=Attribute("toplevelentries") =0 mentsByTagName("viewentries")[0].edItem(el ement) } mentsByTagName("viewentries")[0].attributes[0].text=0 element=Element("viewentry"); mentsByTagName("viewentries")[0].appendChild(element); for(var n=0;n<;n++){ element=Element("entrydata"); mentsByTagName("viewentry")[0].appendChild(element); element=Attribute("columnnumber") =n mentsByTagName("entrydata")[n].edItem(elem ent) element=Attribute("name") =tableheadtext[n] mentsByTagName("entrydata")[n].edItem(elem ent) element=Element("text"); ="" mentsByTagName("entrydata")[n].appendChild(element); } //添加列显示宽度 for(var t=0;t<;t++){ var element_attr=Attribute("width") element_=colwidthval[t] if(mentsByTagName("viewentry")[0].(t)){ mentsByTagName("viewentry")[0].(t).attribute edItem(element_attr) } } } } } //typestr!=""&&typelenstr!="0"为单一分类且有文档的情况或有分类列表 且有文档或无分类列表且有文档的情况 if((typestr!=""&&typelenstr!="0")||(typestr==""&&typelenstr!="0")){ typelen=1 if(typeof(catField)!="undefined"){ //有分类列表且有文档的情况 typename=("###") eachtypelen=("###") tmpstr="./"+viewname+"?ReadViewEntries&start="+startnum+"&count="+rowsn um+"&RestrictToCategory="+typetext } else{ for(var i=0;i<;i++){ //生成下拉列表 optiontext=typename[i] //取得类别名称 optionval=eachtypelen[i]//取得该类别文档总数 var newOpt = new Option(optiontext, optionval, false, true) s[] = newOpt; } s[0].selected=true typetext=s[0].text totaldoc=s[0].value typetext=typestr totaldoc=typelenstr if(typetext==""){ tmpstr="./"+viewname+"?ReadViewEntries&start="+startnum+"&count="+rowsnu m } else{ tmpstr="./"+viewname+"?ReadViewEntries&start="+startnum+"&count="+rowsnu m+"&RestrictToCategory="+typetext (tmpstr); if(getReadyState()){ (setpath); if(ode != 0) { } else{ //不为0时,统计条及搜索条显示。统计条及搜索条缺省隐藏 //if(mentsByName("ss")[0]){ showError(); } } //mentsByName("ss")[0].y="" //} if(mentsByName("tab1")[0]){ mentsByName("tab1")[0].y="" } //添加列显示宽度 for(var t=0;t<;t++){ var element_attr=Attribute("width") element_=colwidthval[t] if(mentsByTagName("viewentry")[0].(t)){ mentsByTagName("viewentry")[0].(t).attribute edItem(element_attr) } //将文档数目、页数统计条初始化 pagenum=parseInt(totaldoc)/parseInt(rowsnum) if(pagenum>parseInt(pagenum)){ pagenum=parseInt(pagenum)+1 } else{ } pagenum=parseInt(pagenum) } pagestathtml="共"+pagenum+"页,当前显示第1页, " if(("pagestat")){ ("pagestat").innerHTML=pagestathtml } if(parseInt(totaldoc) htmlstr="共找到"+totaldoc+"条文档,当前显示 1-"+totaldoc+"条" } else{ htmlstr="共找到"+totaldoc+"条文档,当前显示 1-"+rowsnum+"条" } } } if(("totalstat")){ ("totalstat").innerHTML=htmlstr } } doTransform(); } //将xml文件格式转化为html格式,并输出到表单的HTMLresults中 function doTransform() { if (getReadyState()){ } 注意地方: 2.1 把XML数据转换成HTML格式数据方法:doTransForm()中的 ormNode(style). resulting = ormNode(style); } 系统环境 1. Lotus Domino6.5 2. IE6.0以上
版权声明:本文标题:在Domino中利用XSL和XML输出格式数据列表 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1721604197a887711.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
更多相关文章
xp系统win10共享打印机怎么设置_win10、win7与XP如何共享文件和打印机(上)
经常有朋友问我,如何在办公室里有不同系统的电脑里同时共享一台打印机,因为打印机只是接在众多电脑中的一台,其他人想打印的话就需要把信息发过去,然后才能打印
局域网中文件或打印机共享服务器,局域网内文件、打印机共享设置详解.doc
文档介绍: 局域网内文件、打印机共享设置详解第一:小型企业中,一般没有另外装置如WINDOWS2003服务器操作系统电脑来作为打印服务器而采用是装有WINDOWSxp电脑之间的双机打印共享,这是对等网之间的打印共享,因
MFC生成exe文件后拷到其他电脑运行,出现应用程序无法正常启动(0xc000007b)
1、一般程序在测试的时候,或者发布的时候,可能有些人粗心或者忘记把一些必要的系统所需要的dll文件一起打包进去,然后一启动程序,就出现下面的弹框&
Arcpy读取CAD软件dwg、dxf等格式数据,转换geojson
Arcpy读取CAD软件dwg、dxf等格式数据,转换geojson code import osimport sysimport uuidimport arcpy# 获取当前脚本的物理路径def getS
Gerbview(高级pcb看图软件)官方正式版V9.20 | pcb文件怎么打开 | 含pdf转cad转换器和gerbview使用教程
Software Companions Gerbview 是一款集成有转换功能的高级pcb看图软件,可以直接查看、打印和转换 Gerber、Extended Gerber、ODB++、PDF、Excellon
Auto CAD:CAD软件之顶层菜单栏(文件、编辑、视图、插入、格式、绘图、标注、修改、参数、窗口、数据视图)简介之详细攻略
Auto CAD:CAD软件之顶层菜单栏(文件、编辑、视图、插入、格式、绘图、标注、修改、参数、窗口、数据视图)简介之详细攻略 目录 顶层菜单栏 1、文件、编辑、视图、插入、格式 2、工具(1)、计算剖面线区域的面
CADCASS土地报备坐标数据提取插件txt报盘数据导出工具支持环岛地块
1、插件下载:QTools for AutoCAD 2、使用说明:**APPLOAD命令加载“QTools for AutoCAD”插件,ZX命令>土地报备坐标数据提取
solidworks 3D模型文件导出到tanner ledit版图软件中
solidworks 3D模型文件导出到tanner ledit版图软件中 简介操作1. 文件格式问题2. SW直接导出DXF文件到LEDIT的问题3.布尔操作,得到所需版图 注意事项补充 2226 简介 MEM
企业防泄密一定要做!2024文件加密软件
随着数据泄漏事件的频繁发生和网络威胁的日益复杂,企业防泄密已经成为一项至关重要的工作。为了保护敏感信息和知识产权,企业需要采取一系列措施,其中包括使用文件加密软件。 安秉网
u盘数据不见了能恢复吗?可以试试这3种方法
U盘通常体积小巧,存储容量较大,在现代社会中广泛使用。用户可以将各种类型的数据存储到U盘中,如照片、音乐、视频、文档等。但是使用过程中U盘数据无故消失了怎么办呢&#x
备份数据选u盘还是硬盘?数据丢失又该如何恢复?
备份数据选u盘还是硬盘?现在越来越多的人知道备份数据的重要性,特别是去年感受过勒索病毒的危害,很多人已经养成了定期备份数据的习惯,但现在设备花样也很多&
ios迅雷php格式,2019最新最全iOS迅雷文件提取方法
原标题:2019最新最全iOS迅雷文件提取方法 经常有小伙伴问我关于迅雷备份的事情 ,之前波老师也给大家零零散散提过几次迅雷失效前或失效后提取文件的方法,这次波老师将所有方法
【树莓派】从零搭建DAS服务器,挂载扩容硬盘,实现文件存储与自动下载
树莓派搭建家庭DAS服务器,实现自动下载 配置树莓派 挂载 配置树莓派 树莓派 文件共享功能 准备硬盘 安装和配置samba 映射至本地 自动下载功能 安装并配置aria2 启动 本文主要介绍了树莓派购买后的配置方法&
清理迅雷系列软件数据记录【破坏性】
清理迅雷系列软件数据记录 垃圾清理 删除以下目录下所有文件 C:Program Files (x86)Thunder NetworkThunderProgramXMPProfilesSubtitleQuery C:
Landsat系列数据、GF1号数据和哨兵数据下载流程
今天,主要跟大家分享一些常用的中高分辨率遥感数据获取的途径及方法。 (1)USGS的两个影像下载网站之一:https:glovis.usgs.govapp,(直接搜索glovis即可找到该网站)。 该网站是USGS下属的影像下载
远程Linux服务器文件下载至Windows本地
使用基于ssh的pscp命令 pscp root192.168.1.200:tmptest.txt D:桌面注意:前提条件是已经安装Putty 使用基于ftp的get命令在远程服务器下使用如下命令&
使用wget下载指定目录下所有文件-Windows
wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCPIP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合。 Linux系统中的wge
ubuntu 与 windows 之间的文件互传
Linux嵌入式开发环境通常分为 Ubuntu和 Windows,一般电脑都是安装的 Windows 系统,很多工作是在 Windows下进行的,但是 Linux开发又必须在
ubuntu与windows互传文件的3种方法
一般在进行编程作业的时候,我们会采用“开发在Windows中编辑源代码,在linux中编译、执行源代码。这往往需要需要将在Windows下编辑好的源代码上传到linux系统种进行编译。怎么来进行上
chrome浏览器(block)屏蔽http文件下载,如何解除?
最近升级了chrome浏览器,发现不能从http网站下载文件了。 F12打开console,发现每次从http网站下载文件,console都会出现下载被blocked(屏蔽
推荐文章
热门文章
危机边缘第五季全集Fringe迅雷下载
23小时前腾讯云能装安卓虚拟机么
21小时前禁止Windows更新自动安装驱动程序
10小时前MyEclipse 使用技巧
6小时前攻击防范六(整理)
3小时前
最新文章
web前端发展历程
0秒前操作系统和操作系统内核的关系
43秒前典型的嵌入式系统组成
1分钟前web测试方法总结
29秒前【网安第一章】——信息收集
1分钟前HW蓝队面试题(初、中级)
22秒前JVM与Java体系结构
51秒前这些年,我身边的那些人和事
1分钟前小米手机肿么还原时钟
1月前15000流明是多少瓦
1月前一般普通投影机功率多大?
1月前坚果V9投影机具体参数?
1月前80后90后_高一作文
2月前ZXMVC8900(V3
2月前
发表评论