1. 使用asp.net ajax
- <html xmlns="http://www.w3.org/1999/xhtml" >
- <head runat="server">
- <title></title>
- <script type="text/javascript">
- setInterval("test()", 5);
- function test() {
- var obj = document.getElementById('Button1');
- obj.click();
- }
- </script>
- </head>
- <body>
- <form id="form1" runat="server">
- <asp:ScriptManager ID="ScriptManager1" runat="server">
- </asp:ScriptManager>
- <div>
- <asp:UpdatePanel ID="UpdatePanel1" runat="server">
- <ContentTemplate>
- <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
- <div style="display:none;">
- <asp:Button ID="Button1" runat="server" Text="Refresh"/>
- </div>
- </ContentTemplate>
- </asp:UpdatePanel>
- </div>
- </form>
- </body>
- </html>
这里主要是用到了asp.net ajax 的UpdatePanel。 然后使用javascript定时自动的去点击按钮,模拟人工更新。
2. 通过webservice.htc 调用webservice来实现动态刷新
- <html xmlns="http://www.w3.org/1999/xhtml" >
- <head runat="server">
- <title></title>
- <script type="text/javascript">
- setInterval("GetNewString()", 1000);
- function GetNewString() {
- service.useService("WebServiceTest.asmx?WSDL", "WebServiceTest");
- service.WebServiceTest.callService("GetTestString");
- }
- function Service_Result() {
- if (event.result.error) {
- divFeatured.innerText = event.result.errorDetail.string;
- }
- else {
- divFeatured.innerText = event.result.value;
- }
- }
- </script>
- </head>
- <body>
- <form id="form1" runat="server">
- <div>
- <div id="service" style="behavior:url(webservice.htc)" onresult="Service_Result()"></div>
- <div id="divFeatured" style="width:100px; height:100px; background-color:Yellow; color:Red;"></div>
- </div>
- </form>
- </body>
- </html>
- public class WebServiceTest : System.Web.Services.WebService
- {
- Random rd = new Random(DateTime.Now.Second);
- [WebMethod]
- public string GetTestString()
- {
- string[] strs = { "abc", "12", "3dfrw", "34fg", "ghjk23", "56d4fg", "df9g5", "ett2r", "34512" };
- return strs[rd.Next(strs.Length-1)];
- }
- }
这里要去下载webservice.htc文件,并将其放在项目中。