老尸 发表于 2015-1-16 00:21:22

来谈谈:XMLHTTP无革新主动及时更新数据

CSS的极大优势表现在简洁的代码,对于一个大型网站来说,可以节省大量带宽,而且众所周知,搜索引擎喜欢清洁的代码。
传统上,我们扫瞄网页,假如到场最新的数据.只能是等我们从头向服务器端哀求时才干显现出来.可是,关于一些时效性很强的网站.传统的这类做法是不克不及满意的.我们可让程序主动革新.准时向服务器哀求数据.5秒取一次数据,10秒取一次数据.使用XMLHTTP收回哀求并获得数据.传到客户端,客户端从头构造并显现数据.

demo.htm前台显现.

<scriptlanguage="JavaScript">
functionGetResult()
{
/*
*---------------GetResult()-----------------
*GetResult()
*功效:经由过程XMLHTTP发送哀求,前往了局.
*参数:str,字符串,发送前提.
*实例:GetResult();
*---------------GetResult()-----------------
*/
varoBao=newActiveXObject("Microsoft.XMLHTTP");
//特别字符:+,%,&,=,?等的传输办理举措.字符串先用escape编码的.
//Update:2004-6-112:22
oBao.open("POST","Server.asp",false);
oBao.send();
//服务器端处置前往的是经由escape编码的字符串.
varstrResult=unescape(oBao.responseText);
//将字符串分隔.
vararrResult=strResult.split("###");
RemoveRow();//删除之前的数据.
//将获得的字符串分隔,并写进表格中.
for(vari=0;i<arrResult.length;i++)
{
arrTmp=arrResult.split("@@@");
num1=arrTmp;//字段num1的值
num2=arrTmp;//字段num2的值
row1=tb.insertRow();
cell1=row1.insertCell();
cell1.innerText=num1;
cell2=row1.insertCell();
cell2.innerText=num2;
}
}

functionRemoveRow()
{
//保存第一行表头,其他数据均删除.
variRows=tb.rows.length;
for(vari=0;i<iRows-1;i++)
{
tb.deleteRow(1);
}
}

functionMyShow()
{
//2秒主动革新一次,2秒获得一次数据.
timer=window.setInterval("GetResult()",2000);
}
</script>

<bodyonload="MyShow()">
<p>
</p>
<tablewidth="47%"height="23"border="0"cellpadding="1"cellspacing="0"id="tb">
<tr>
<td>num1</td>
<td>num2</td>
</tr>
</table>


Server.asp背景读取数据

<%@Language="JavaScript"%>
<%
functionOpenDB(sdbname)
{
/*
*---------------OpenDB(sdbname)-----------------
*OpenDB(sdbname)
*功效:翻开数据库sdbname,前往conn工具.
*参数:sdbname,字符串,数据库称号.
*实例:varconn=OpenDB("database.mdb");
*---------------OpenDB(sdbname)-----------------
*/
varconnstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath(sdbname);
varconn=Server.CreateObject("ADODB.Connection");
conn.Open(connstr);
returnconn;
}
varsResult=newArray();
varoConn=OpenDB("data.mdb");
//特别字符:+,%,&,=,?等的传输办理举措.客户端字符是经由escape编码的
//以是服务器端先要经由unescape解码.
//Update:2004-6-112:22
varsql="selectnum1,num2fromnumsorderbyid";
varrs=oConn.Execute(sql);
while(!rs.EOF)
{
//一笔记任命"###"离隔.每列数据用"@@@"离隔.这是以只要两个列数据的情形.
sResult=rs("num1").Value+"@@@"+rs("num2").Value
rs.MoveNext();
}
//escape办理了XMLHTTP。中文处置的成绩.
Response.Write(escape(sResult.join("###")));
%>


数据库data.mdb
表nums
id,主动编号
num1,文本
num2,文本

测试数据

idnum1num2
120.7020.810
210.520.5
312.3300
4132323
556356
62010
</p>
凡是和我讨论客户段效率的全是脑子有问题的,影响的全是图片和FLASH,所以我一直建议一个提交按钮就不要用图片带代替了。

谁可相欹 发表于 2015-1-18 06:13:53

难以逾越的障碍会大大打击你的学习积极性。这就需要你的恒心,坚持不懈的决心。在自己无法解决某些问题时,就需要虚心请教别人.

冷月葬花魂 发表于 2015-1-24 09:49:10

由CS4 版本开始,则转用WebKit 排版引擎(亦即Google Chrome和Apple Safari浏览器所用的排版引擎)作为网页预览。

简单生活 发表于 2015-2-1 08:37:24

滚动条)层属性--溢出(visible/hidden/scroll/auto)

爱飞 发表于 2015-2-7 03:12:41

我深感到交流的重要。善于交流的人才是善于学习的人。在整个技术的学习过程中,我总结了四大定律:兴趣、恒心、虚心、时间。

蒙在股里 发表于 2015-2-20 10:28:46

直接用代码建立链接,如:可以直接输入 <a herf = \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"red.html\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">红色的网页 12、插入标签法建立链接,可以再选中文字后在代码中插入html标签,页元素<a>.也可以按ctrl+t进入html标签插入方法之后输入代码即可。

变相怪杰 发表于 2015-3-6 17:25:07

您在所见即所得网页编辑器进行网页制作和在WORD中进行文本编辑不会感到有什么区别,但它同时也存在着致命的弱点。

深爱那片海 发表于 2015-3-13 05:10:01

学Dreamweaver技术的过程其实是一个增加信心的过程。

兰色精灵 发表于 2015-3-20 13:56:25

帧(frames)和表格的制作速度快的令您无法想像。进阶表格编辑功能使您简单的选择单格、行、栏或作未连续之选取。
页: [1]
查看完整版本: 来谈谈:XMLHTTP无革新主动及时更新数据