欢迎光临
我们一直在努力

实现web页面的局部刷新-.NET教程,Web Service开发

建站超值云服务器,限时71元/月

服务器的回传会引发整个页面的刷新,怎么样只让它刷新局部呢,前几天看见书上有讲用

webservice行为的,今天试了试,效果还不错

在web目录中需要一个文件webservice.htc

可以到这里下载: http://msdn.microsoft.com/workshop/author/webservice/webservice.htc

见一个webservice 文件名为service1.asmx:

[webservice(namespace="http://localhost/behaviorservice/")]

public class testservice : system.web.services.webservice

{

/// <summary>

/// 返回服务器的时间

/// </summary>

[webmethod]

public string getservertime()

{

return datetime.now.tostring();

}

}

在同级目录下进一个html文件,内容如下:

<script>

var intcallid = 0;

function init()

{

getservertime();

setinterval("getservertime()",1000);

}

function getservertime()

{

service.useservice("service1.asmx?wsdl","testservice");

intcallid = service.testservice.callservice("getservertime");

}

function service_result()

{

if (event.result.error)

{

showresult.innertext = event.result.errordetail.string;

}

else

{

showresult.innertext = event.result.value;

}

}

</script>

<html>

<body onload="init();">

<div id="service" style="behavior:url(webservice.htc)" onresult="service_result()"></div>

<span id=showresult></span>

</body>

</html>

我查看http://localhost/behaviorservice/test1.htm就可以看到一个服务器上的时间了

而且是会动的,通过这种方法就可以实现页面的局部刷新了

有两点限制:

1.行为只能用域内的web服务,因为dhtml内置的安全限制造成的

2.通过的这种方式的访问的类型会被限制,行为支持.net的基本类型和它们的数组

如:dataset,datatable得复杂类型就不支持了

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 实现web页面的局部刷新-.NET教程,Web Service开发
分享到: 更多 (0)

相关推荐

  • 暂无文章