请问rds里面的数据源绑定有什么用。
我最近需要在不刷新页面的前提下更新数据。网上查了下,可以使用rds。我找到了一个例子,可以使用,就是绑定那没看懂。客户端代码如下:
<HTML>
<HEAD>
<TITLE>RDS 的例子:不刷新页面更新数据</TITLE>
<STYLE TYPE="text/css">
BODY{font-size:10.5pt}
.heading{font-weight:bold}
.cite{font-size:9pt}
</STYLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<center>
<SPAN CLASS="heading">RDS 的例子:不刷新页面更新数据</SPAN><HR>
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"
ID="dsoData" HEIGHT="0" WIDTH="0"
ondatasetcomplete="createCells()">
</OBJECT>
<P>
<div id=btns style="visibility: visible">
<BUTTON ID="cmdAuthors" onclick="resetData('authors')">authors</BUTTON>
<BUTTON ID="cmdPublishers" onclick="resetData('publishers')">publishers</BUTTON>
<BUTTON ID="cmdEmployee" onclick="resetData('Employee')">Employee</BUTTON>
<BUTTON ID="cmdJobs" onclick="resetData('jobs')">Jobs</BUTTON>
</div>
<div id=spaceline style="visibility: hidden">请稍候......<br><br></div>
<TABLE ID="tblData" border=1 cellspacing=0>
<THEAD><TR bgcolor=#CCCCCC></TR></THEAD>
<TBODY><TR></TR></TBODY>
</TABLE>
<SCRIPT LANGUAGE=JScript>
function resetData(sTable)
{
ShowHide()
// reset the data
dsoData.URL = "data.asp?sTable="+sTable;
dsoData.Refresh();
}
function createCells()
{
var fldF;
var tblCell;
// 删除已有的表格
deleteCells();
// 插入新的表格
for (fldF = new Enumerator(dsoData.recordset.Fields);
!fldF.atEnd(); fldF.moveNext())
{
// create a new cell for the heading
tblCell = tblData.rows[0].insertCell();
tblCell.innerHTML = '<B>' + fldF.item().name + '</B>';
// create a new cell for the body
tblCell = tblData.rows[1].insertCell();
tblCell.innerHTML = '<div DATAFLD="' +
fldF.item().name + '"></div>';
}
// now bind to the data source
tblData.dataSrc = "#dsoData";
window.setTimeout("ShowHide()",1500)
}
function deleteCells()
{
var iCell;
var iCells;
// unbind the table
tblData.dataSrc = '';
// delete existing cells
iCells = tblData.rows[0].cells.length
for (iCell = 0; iCell < iCells; ++iCell)
{
tblData.rows[0].deleteCell();
tblData.rows[1].deleteCell();
}
}
//隐藏数据按钮片刻
function ShowHide()
{
if (document.all["btns"].style.visibility == "hidden"){
document.all["btns"].style.visibility = "visible";
document.all["spaceline"].style.visibility = "hidden";}
else{
document.all["btns"].style.visibility = "hidden";
document.all["spaceline"].style.visibility = "visible";}
}
</SCRIPT>
</center>
</BODY>
</HTML>
关键是createCells这个函数。因为在绑定之前已经把数据得到并且显示了,所以不知道后面的绑定有什么用。网上找了下,介绍rds的文章都说需要绑定,但只是一笔带过。MSDN上找到了相关部分,也看的糊里糊涂的。我想问下:
1)数据绑定有啥用?
2)不用行不行?
3)不用会出什么问题?
请各位赐教。谢谢