HTML5页面上的数据怎么从服务器端获取

html-css08

HTML5页面上的数据怎么从服务器端获取,第1张

可以使用动态HTML从一个HTML页面元素中获取数据。它允许获取和操作数据而不需经过服务器。使用页面上对象的属性,在 Visual Basic

代码中可以在页面上搜集数据、执行计算并显示响应,而不需将处理从客户端传送到服务器,传送将增加对用户操作和请求的响应时间。

例如,假设正在使用一个应用程序,它允许用户通过输入作者名字、书名或检索书号到一个搜索页的文本字段中,从一个数据库中查询书目。文本字段被命名为Author、Title和CallNo。当从应用程序的搜索页提交一个查询时,应用程序必须从这些文本字段获取该值。

下面的代码显示了如何使用变量来获取这些字段的值:

Private function cmdSearch_onclick() As Boolean

创建变量包含搜索条件。

Dim sAuthor as String

Dim sTitle as String

Dim sCallNo as String

从页面获取搜索条件。

sAuthor=Me.author.Value

sTitle=Me.title.Value

sCallNo=Me.callno.Value

这里的代码处理并返回查询。

End Function

这段代码使用HTML文本字段的Value属性获取字段的数据,代码将打开一个数据库连接、创建一个记录集并返回适当的记录,然后数据被发送给用户。

网页前端是无法获取到服务器时间的,只有通过后台取值然后进行传递。 使用Ajax每秒获取服务器的时间并显示出来,但是服务器网络延迟较高,这样误差较大。

示例采用Head的方法处理,第一次页面加载时从服务器端获得时间,以这个时间为基准,客户端再用js每秒累加。

完整代理示例:

<html>

<head>

<title>html网页获取服务器的时间</title>

<script language="JavaScript" type="text/javascript">

<!--程序执行需要耗费时间,误差在2秒以下-->

var xmlHttp = false

<!--获取服务器时间-->

try {

xmlHttp = new ActiveXObject("Msxml2.XMLHTTP")

} catch (e) {

try {

    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")

} catch (e2) {

    xmlHttp = false

}

}

if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {

xmlHttp = new XMLHttpRequest()

}

xmlHttp.open("GET", "

, false)

xmlHttp.setRequestHeader("Range", "bytes=-1")

xmlHttp.send(null)

severtime=new Date(xmlHttp.getResponseHeader("Date"))

<!--获取服务器日期-->

var year=severtime.getFullYear()

var month=severtime.getMonth()+1

var date=severtime.getDate()

<!--获取服务器时间-->

var hour=severtime.getHours()

var minu=severtime.getMinutes()

var seco=severtime.getSeconds()

<!--格式化输出服务器时间-->

function getSeverTime(){

seco++

if(seco==60){

minu+=1

seco=0

}

if(minu==60){

   hour+=1

   minu=0

}

if(hour==24){ 

date+=1

hour=0

}

<!--日期处理-->

if(month==1||month==3||month==5||month==7

||month==8||month==10||month==12)

{

if(date==32)

{

   date=1

   month+=1

   }

}else if(month==4||month==6||month==9||month==11){

if(date==31){

   date=1

   month+=1

   }

}else if(month==2){

   if(year%4==0&&year%100!=0){<!--闰年处理-->

    if(date==29){

     date=1

     month+=1

    }

   }else{

    if(date==28){

     date=1

     month+=1

    }

   }

}

if(month==13){

year+=1

month=1

}

sseco=addZero(seco)

sminu=addZero(minu)

shour=addZero(hour)

sdate=addZero(date)

smonth=addZero(month)

syear=year

innerdata="当前服务器时间:"

document.getElementById("servertime").innerHTML=innerdata+syear+"-"+smonth+"-"+sdate+" "+shour+":"+sminu+":"+sseco

setTimeout("getSeverTime()",1000)

setTimeout("getClientTime()",100)

}

function addZero(num) {

num=Math.floor(num)

return ((num <= 9) ? ("0" + num) : num)

}

</script>

</head>

<body onLoad="getSeverTime()">

<p id="servertime"></p>

<p id="clienttime"></p>

<p id="xctime"></p>

</body>

</html>

【扩展】网页前端获取当前时间,调用date()函数即可。

示例代码:

<span id="cg"></span>

<script>setInterval("cg.innerHTML=new Date().toLocaleString()",1000)</script>