XML与ASP简单结合实现HTML模板功能

本文利用的是XML的DSO数据绑定功能来实现ASP代码和HTML代码的分离,从而实现快速更换HTML模板的功能,由于本人只是刚刚开始接触XML,有许多不太了解的,在这里仅仅是提出一点想法,如果本文有错漏的地方请大家指多.

目前快速更换模板功能基本上是处于replace替换模板中的特殊标签后再显示出来,这样加大了许多ASP的处理时间,而且模板文件过长的话,加载到内存里进行处理时也是对服务器内存的一种考验.而XML中提供了一种DSO数据绑定功能.可以将标识替换操作交付给客户端.由于为了简化HTML模板的制作要求.所以,尽量简化HTML模板的XML技术含量是有必要的.

简单来说这个方式只是使用datasrc和dataFLd这两个HTML标签的属性实现的.废话就不多说了,一切实例说话.以下两个例子将说明一切.

例一:单个数据显示 
以下是用ASP生成的XML数据岛. 
<xml id="xmldata"> 
<xData> 
<name>coder</name> 
<webname>轻灵自由的珍珠</webname> 
<weburl>http://blog.csdn.net/oyiboy</weburl> 
</xData> 
</xml>

显示时的HTML原码: 
<table datasrc="#xmldata" border=1> 
<tr> 
<td colspan=2>我的简单介绍</td> 
</tr> 
<tr> 
<td>我的名称:</td> 
<td><span dataFLd="name"></span></td> 
</tr> 
<tr> 
<td>网站名称:</td> 
<td><span dataFLd="webname"></span></td> 
</tr> 
<tr> 
<td>网站地址:</td> 
<td><a dataFLd="weburl"><span dataFLd="weburl"></span></a></td> 
</tr> 
</table>

例二:多条数据显示 
以下是用ASP生成的XML数据岛. 
<xml id="xmldataList"> 
<xData> 
<webList> 
<webname>轻灵自由的珍珠</webname> 
<weburl>http://blog.csdn.net/oyiboy</weburl> 
</webList> 
<webList> 
<webname>Estyle(靳田)之狂想手扎</webname> 
<weburl>http://blog.csdn.net/estyle</weburl> 
</webList> 
<webList> 
<webname>最爱白菜</webname> 
<weburl>http://blog.csdn.net/qunluo</weburl> 
</webList> 
</xData> 
</xml>

显示时的HTML原码: 
<table datasrc="#xmldataList" border=1> 
<thead> 
<tr> 
<td colspan=2>我关注的Csdn Blog列表</td> 
</tr> 
<tr> 
<td align="center">名称</td> 
<td align="center">地址</td> 
</tr> 
</thead> 
<tbody> 
<tr> 
<td><span dataFLd="webname"></span></td> 
<td><a dataFLd="weburl"><span dataFLd="weburl"></span></a></td> 
</tr> 
</tbody> 
</table>

(以上两个例子可以copy到一个文件内查看实际运行效果.) 
注意例二HTML原码中的thead和tbody,在显示多条记录时会有用的,如果不明白他们有什么用的可以去掉它们后看看会有什么后果.

顺便说一句,图像和按键的数据绑定和超链接的绑定是差不多的,如:<img dataFLd="webimg">和<button dataFLd="buttonvalue"></button>

局限,就是要求浏览器必须支持XML,还有一个疑问.象例一中的<a dataFLd="weburl"><span dataFLd="weburl"></span></a>会显示得出<a href="http://blog.csdn.net/oyiboy">http://blog.csdn.net/oyiboy</a>的效果,如果要在不修改XML数据的情况下实现<a href="http://blog.csdn.net/oyiboy/?loginname=code">http://blog.csdn.net/oyiboy</a>的效果应该怎么作.请各位高人指点一下.

(0)

相关推荐

  • XML与ASP简单结合实现HTML模板功能

    本文利用的是XML的DSO数据绑定功能来实现ASP代码和HTML代码的分离,从而实现快速更换HTML模板的功能,由于本人只是刚刚开始接触XML,有许多不太了解的,在这里仅仅是提出一点想法,如果本文有错漏的地方请大家指多. 目前快速更换模板功能基本上是处于replace替换模板中的特殊标签后再显示出来,这样加大了许多ASP的处理时间,而且模板文件过长的话,加载到内存里进行处理时也是对服务器内存的一种考验.而XML中提供了一种DSO数据绑定功能.可以将标识替换操作交付给客户端.由于为了简化HTML模

  • XML加ASP实现网页“本地化”

    想让你的站点能被来自多个国家的冲浪者看明白吗?无疑,这就需要提供多个语言版本的页面内容,也就是所谓的 "本地化"功能.最容易想到的方法就是分别编写多种语言的页面内容,然后放置到不同的目录下,再在首页上添加导航 到各自语言位置的链接.很明显,这样的处理方式将浪费许多包含公共元素以及设计框架的空间,而且修改.维护也很烦 琐.有什么好方法吗?当然,本文就介绍如何结合使用XML与ASP技术实现这个目的.  本文将讨论如下几个方面的内容:创建包含语言资源的XML文档.使用ASP创建Web页面模板

  • ASP.NET之Excel下载模板、导入、导出操作

    本文介绍了ASP.NET下Excel下载模板.导入.导出操作,供大家参考,具体内容如下 1.下载模板功能 protected void btnDownload_Click(object sender, EventArgs e) { var path = Server.MapPath(("upfiles\\") + "test.xlt"); //upfiles-文件夹 test.xlt-文件 var name = "test.xlt"; try {

  • php添加数据到xml文件的简单例子

    xml文件:stu.xml: <?xml version="1.0" encoding="utf-8" ?> <AllData> <xueshengmen> <xuesheng> <name>张三</name> <yuwen>80</yuwen> <shuxue>90</shuxue> <yingyu>70</yingyu>

  • ASP.NET如何自定义项目模板详解

    前言 在微服务架构盛行的时代,一言不合就新建一个服务,虽然搭建服务并没什么难度,但不可避免的是每个人搭建出来的架子会存在差异,这很合理,因为每个开发者的个人风格.工作经验都不一样,难免认为自己喜欢的才是最好的.另一方面,如果需要较频繁搭建服务,这些重复而没难度的操作就显得浪费时间,而且每次手动处理总可能存在一些细节上的失误,出现异常然后花时间解决更得不偿失. 面对以上一些问题,拥有一个符合自己团队的项目模板就显得比较重要了,这篇文章主要介绍在 ASP.NET 如果自定义项目模板. 内置的项目模板

  • python xml模块的简单使用

    一.xml简介 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀,至今很多传统公司如金融行业的很多系统的接口还主要是xml. xml的格式如下,就是通过<>节点来区别数据结构的: <?xml version="1.0"?> <data> <country name="Liechtenstein"> <r

  • ASP.NET实现的生成验证码功能示例【附demo源码】

    本文实例讲述了ASP.NET实现的生成验证码功能.分享给大家供大家参考,具体如下: 生成验证码原理:产生随机字符,并将字符生成为图片,同时储存到Session里去,然后验证用户输入的内容是否与Session中的验证码相符即可. 效果图:用户可以点击切换验证码信息. 一般处理程序:CheckCodeHandler.cs <%@ WebHandler Language="C#" Class="CheckCodeHandler" %> using System

  • C#设计模式之Template模板方法模式实现ASP.NET自定义控件 密码强度检测功能

    本文实例讲述了C#设计模式之Template模板方法模式实现ASP.NET自定义控件 密码强度检测功能.分享给大家供大家参考,具体如下: 一.理论定义 模板方法模式 预先定义实现了一些基本属性和方法,需要重新计算的部分,通过子类去重写 或  增加新方法来实现. 二.应用举例 需求描述: ASP.NET自定义控件有很多通用的属性和事件, 通过继承System.Web.UI.WebControls.WebControl类,可以实现自定义控件. WebControl拥有控件基本的方法和事件,让我们定义

  • Android基于socket实现的简单C/S聊天通信功能

    本文实例讲述了Android基于socket实现的简单C/S聊天通信功能.分享给大家供大家参考,具体如下: 主要想法:在客户端上发送一条信息,在后台开辟一个线程充当服务端,收到消息就立即回馈给客户端. 第一步:创建一个继续Activity的SocketClientActity类,包为com.pku.net 编写布局文件socketclient.xml,代码如下: <?xml version="1.0" encoding="utf-8"?> <Lin

  • Android开发之CheckBox的简单使用与监听功能示例

    本文实例讲述了Android开发之CheckBox的简单使用与监听功能.分享给大家供大家参考,具体如下: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_

随机推荐