这几天超级无聊+烦.
坐上冷板凳了.遇到些不重视.NET的人..想起就火大.
上午看了下XML数据岛的, 这个东西可能以后会得到很大的应用,代码也很简单,就是通过一点点的JS来访问XML中的数据,
XML:
<?xml version="1.0" encoding="UTF-8"?>
<users>
<user id="1" name="张三" age="24" sex="男"></user>
<user id="2">
<name>李四</name>
<age>27</age>
<sex>女</sex>
</user>
<user id="3">
<name>王五</name>
<age>32</age>
<sex>女</sex>
</user>
</users>
这里可以看到第一条和后面两条的格式是不一样的,也就是说数据岛可以访问这两种格式的XML,再看页面:
<table>
<tr>
<td>
ID</td>
<td>
<input type="text" id="id" datasrc="#myUser" datafld="id" />
</td>
</tr>
<tr>
<td>
姓名
</td>
<td>
<input type="text" id="txtName" datasrc="#myUser" datafld="name" />
</td>
</tr>
<tr>
<td>
性别
</td>
<td>
<input type="text" id="txtSex" datasrc="#myUser" datafld="sex" />
</td>
</tr>
<tr>
<td>
年龄
</td>
<td>
<input type="text" id="txtAge" datasrc="#myUser" datafld="age" />
</td>
</tr>
<tr>
<td colspan="2">
<input type="button" id="p" onclick="Previous()" value="前一条" />
<input type="button" id="next" onclick="Next()" value="后一条" />
</td>
</tr>
</table>
主要部分就是一个表,再看头文件:
<xml src="users.xml" id="myUser">
</xml>
<script type="text/javascript">
function Previous()
{
if(!myUser.recordset.EOF)
{
myUser.recordset.MovePrevious();
if(myUser.recordset.BOF)
{
myUser.recordset.MoveFirst();
}
}
}
function Next()
{
if(!myUser.recordset.BOF)
{
myUser.recordset.moveNext();
if(myUser.recordset.EOF)
{
myUser.recordset.moveLast();
}
}
}
</script>
这一堆放到HEAD中间,
不难看出,头文件里是可以引用XML的.只要给一个ID和一个SRC, 在表格中, datasrc="#myUser" datafld="sex"是没用过的,datasrc是表示绑定的数据源,正是上面XML的ID,datafld表示显示的节点属性,再则就是那两个JS方法了,这里简单说一下:
recordset记录集,moveLast指针移到最后,MoveFirst最前,moveNext向下,MovePrevious向上.
有两个要说明一下,不然觉得很怪,
BOF:当前记录是否在集合的第一条之前,BOOL值,
EOF:当前记录是否在集合的最后条之前,BOOL值,
这下就明白了吧~~
这个可以通过JS访访问XML.更多操作网上可以找到,可以结合ASP.NET做很多的事啦~