xml数据岛绑定时的超链接处理

在写地图空间搜索的时候,用ajax返回的数据结果,除了要在地图上标点之外还需要 用传统的表格方式罗列,并且可以点击察看信息,因为需要对返回结果的处理足够灵活,所以不能在js当中写死格式。这里用了xml数据岛的方式(系统是只需要考虑IE)只把要用到xml数据信息返回,具体怎么在html页面上布局可以由其它开发人员自己订制。

下面代码去掉了ajax的部分,只简单的演示如何生成一个xml数据岛,以及如何和html表格绑定,并显示出相关的链接信息。其中链接的href内容可以保存在xml数据中,用datafld属性来处理。

 

< html  xmlns ="http://www.w3.org/1999/xhtml" >
< head >
    
< title > XML数据岛 </ title >
</ head >

< script  type ="text/jscript" >
    
//获取xml,实际应用中大多是ajax异步获取的
    function getData()
    
{
        
var xmlData="<xml ID=/"xmlData/"><root>";
        
for(var i=0;i<5;i++)
        
{
            
try
            
{
                
var id="Name"+i;
                
var Type="Type"+i;
                xmlData
+="<METADATA><Name>"+id+"</Name><Type>"+Type+"</Type><Href>javascript:alert('"+id+"')</Href></METADATA>";
                pointIndex
++;
            }

            
catch(e)
            
{
                
            }

        }

        xmlData
+="</root></xml>";
        document.all.xmlDataPanel.innerHTML
=xmlData;
    }

    
//简单的添加xml信息
    function addData()
    
{
        
var xmlData= document.all.xmlDataPanel.innerHTML;
        xmlData
=xmlData.replace("</root></xml>","");
        xmlData
+="<METADATA><Name>newName</Name><Type>newType</Type><Href>javascript:alert('newName')</Href></METADATA>";
        xmlData
+="</root></xml>";
        document.all.xmlDataPanel.innerHTML
=xmlData;
    }

</ script >

< body >
    
< button  onclick ="javascript:getData();" > 获取数据 </ button >
    
< button  onclick ="javascript:addData();" > 添加数据 </ button >
    
< div  id ="xmlDataPanel" >
    
</ div >
    
< div  style ="overflow: scroll; height: 180;width:180"  align ="center" >
        
< div  align ="left" >
            
<!-- 绑定,超链接的地方用 datafld属性,href的值也可以保存在xml数据岛当中,比较灵活,可以使js函数或者一个url地址 -->
            
< table  datasrc ="#xmlData"  border ="1" >
                
< tr >
                    
< td >
                        
< datafld ="Href" >< span  datafld ="Name" ></ span ></ a >
                    
</ td >
                    
< td >
                        
< span  datafld ="Type" ></ span >
                    
</ td >
                
</ tr >
            
</ table >
        
</ div >
    
</ div >
    
</ body >
</ html >

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值