|
有没想过在javascript中使用recordset?原来在客户端操作数据也可以这样简单,定义一个数据源,将数据绑定在各种tag上,实现应用程序般的效果,酷毙了!(首先申明一点,文章的内容全部来自msdn,不过用我自己的话总结而已。) 先看看这样两个例子: http://msdn.microsoft.com/workshop/samples/author/databind/dbevts.htm http://msdn.microsoft.com/workshop/samples/author/databind/dbupdate.htm 不得不又一次佩服微软。 这个是DataBinding的架构: 当然实现数据绑定有下面几步: 第一步,定义数据源 从IE4.0起,就支持下面四种数据源: Tabular Data Control (TDC)TDC提供了一个简单的访问带有格式的文本数据的方法,一般是csv文件。 <OBJECT CLASSID="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83"
ID=dsoComposer WIDTH=0 HEIGHT=0>
<PARAM NAME="DataURL" VALUE="composer.csv">
</OBJECT>
Remote Data Service (RDS)远程数据服务,直接访问远程服务器端的数据,Internet Explorer 4.0. RDS 通过OLE-DB 或 Open Database Connectivity (ODBC)来实现。 示例: <OBJECT classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"
ID=dsoComposer HEIGHT=0 WIDTH=0>
<PARAM NAME="Server" VALUE="http://musicserver">
<PARAM NAME="Connect" VALUE="dsn=music;uid=guest;pwd=">
<PARAM NAME="SQL" VALUE="select compsr_name from composer">
</OBJECT>
不过感觉有点安全性的问题,因为客户端能看到这段代码。 XML Data SourceXML就不多说了,在IE4.0中这样使用: Internet Explorer 5以上可以这样: <!--[if gte IE 5]> 另外IE还提供了一个XML数据岛的概念:XML Data Islands. MSHTML Data Sourcehtml数据页示例: 一旦定义可以这样访问: <OBJECT ID=htmlComposer DATA="compdata.htm" HEIGHT=0 WIDTH=0> </OBJECT> .第二步:绑定数据到HTML元素上
第三步:数据的动态添加,删除等等(对象模型) 当然绑定可以是动态的: 在script中: span1.dataSrc = "#dsoComposer"; span1.dataFld = "compsr_first"; html是这样的:
怎么样? 我觉得http://msdn.microsoft.com/workshop/samples/author/databind/dbevts.htm算是一个应用比较综合的例子了,好好研究一下,必有收获。 网上有不少利用数据绑定实现分页的示例,其实数据绑定还可以做更多的事情吧?应该在rich client里面有非常大的应用,例如制作非常复杂的datagrid。 现在想进一步搞清楚的是如何简便实现与服务器端的同步,因为客户端的数据绑定是对服务器端没有影响的(你可以从服务器端生成数据源,但是在客户端的操作不会自动返回服务器),msdn上说RDS可以,但是这种方法太笨拙了吧,又不安全。 |
HTML中的数据绑定(Data Binding) 选择自 dengwei007 的 Blog
相关文章: