xml转化为html表格的问题,各位请进来看看。 高招就是循环读节点,自己拼html字符串。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用xsl转换,等楼下的给答案吧,呵呵 做个XSL就行了然后:<asp:xml DocumentSource="xxx.xml" TransformSource="xxx.xsl" runat="server" /> 说清楚究竟要怎么转先,可以帮你写个XSLT,不过这种事情最好还是自己去做唔 看看xml和转化后的html就知道了。node的type如果是table,表示的为一张表,如果为cell,则对应的是<td />table的cols表示它的最大列数,cell的cols表示为colspan值,即在<table />的<tr/>中所占的格数。一个Table(TMain)下面可以有多个Table和Cell,如果下面为Table(t1)的话,则单独占TMain的一行,表示为<TR><Table id="t1" /></TR>如果TMain下面的相邻Cell的cols加起来等于(有时会大于)TMain的cols的话,那么前面的cells占一行,后面的cells重新开始循环,如上面的 <node type="cell" cols="1" /> <node type="cell" cols="2" /> <node type="cell" cols="1" /> <node type="cell" cols="1" /> <node type="cell" cols="1" /> <node type="cell" cols="1" />表示为html 标签时就是 <tr><td colspan="1" /><td colspan="2" /></tr> <tr><td colspan="1" /><td colspan="1" /><td colspan="1" /></tr> <tr><td colspan="1" /></tr>这里困难的就是累计那个cols,然后再重新再table添加一个tr。------------------------------我是这样想的,先设两个变量,值分别为<tr>,</tr>然后再依次读取一个node下面的node,但是现在实现起来还是有点困难,希望高手们能给我解惑。thank advance! 如果不用XSLT的话(说实话这玩意性能不行)可以使用XmlTextReader搞定你这种的应该很容易,嗯,到SDK上找例子 请大家尽量具体点哦,最好给出点关键的代码片断,我刚刚研究xslt,还有许多不懂的地方需要向大家请教的。^_^附带几个小问题: 怎么得到一个节点在其父节点中的位置?例如我在为一个node(xxx/node[1])应用一个template时,它的position()总是为一,除非我选择的是xxx/node;如果使用参数就太麻烦了。thanks 呵呵,我就是想在外部实现,如果使用xml下面的类库就不方便extensible了^_^ 在线等!【散分】dropdownlist选择值改变时,gridview跟着查询改变 这样输出有错吗? 客官留步,请听小女子一言 为什么获得不了fileUpload中的值 当当是不是前台是不是没有用.net控件? 求电信Socks代理IP地址 标准表达式中数据类型不匹配 如何在服务器端控制页面刷新? 如何给DateGrid定义CSS结构(我想把4条边去掉,里面的水平网格不要去) 请问怎样在分框aspx网页中消去一个框? 300分 怎样在动态新增的td 中, 加入ControlUse 关于Button弹出确认框的方式
然后:
<asp:xml DocumentSource="xxx.xml" TransformSource="xxx.xsl" runat="server" />
node的type如果是table,表示的为一张表,如果为cell,则对应的是<td />
table的cols表示它的最大列数,cell的cols表示为colspan值,即在<table />的<tr/>中所占的格数。
一个Table(TMain)下面可以有多个Table和Cell,如果下面为Table(t1)的话,则单独占TMain的一行,表示为
<TR><Table id="t1" /></TR>
如果TMain下面的相邻Cell的cols加起来等于(有时会大于)TMain的cols的话,那么前面的cells占一行,后面的cells重新开始循环,如上面的
<node type="cell" cols="1" />
<node type="cell" cols="2" /> <node type="cell" cols="1" />
<node type="cell" cols="1" />
<node type="cell" cols="1" /> <node type="cell" cols="1" />
表示为html 标签时就是
<tr><td colspan="1" /><td colspan="2" /></tr> <tr><td colspan="1" /><td colspan="1" /><td colspan="1" /></tr> <tr><td colspan="1" /></tr>
这里困难的就是累计那个cols,然后再重新再table添加一个tr。
------------------------------
我是这样想的,先设两个变量,值分别为<tr>,</tr>
然后再依次读取一个node下面的node,但是现在实现起来还是有点困难,希望高手们能给我解惑。
thank advance!
可以使用XmlTextReader搞定
你这种的应该很容易,嗯,到SDK上找例子
附带几个小问题:
怎么得到一个节点在其父节点中的位置?例如我在为一个node(xxx/node[1])应用一个template时,它的position()总是为一,除非我选择的是xxx/node;如果使用参数就太麻烦了。
thanks