刷新时间间隔
我需要重新加载页面上的一些div,我做了一些研究,其中大部分都表示jQuery是最简单的方法。但我从来没有使用过jQuery。刷新时间间隔
任何人都可以帮助我吗?
对不起,这个暧昧的问题。让我缩小它有点
HTML
<div style="height:400px; float:left" id="test">
<table border="0" width="" style="table-layout: fixed; height: 400px;" >
<tr>
<td align="center" style="font-size:xx-large; width: 283px; font-family: Rockwell;border-color:#3366CC; border-style:solid" bgcolor="#3366CC">
<asp:Label ID="lblHeaderLoket" runat="server"></asp:Label>
</td>
</tr>
<tr>
<td align="center" style="font-size:xx-large; font-family: 'Segoe Script'; width: 283px;border-color:#3366CC; border-style:solid">
<asp:Label ID="lblHeaderPlatNumber" runat="server"></asp:Label>
</td>
</tr>
</table>
</div>
C#
private void BindHeaderObject()
{
CriteriaComposite cc = new CriteriaComposite(new Criteria(typeof(BoardQueue), "RowStatus", (short)DBRowStatus.Active));
cc.And(new Criteria(typeof(BoardQueue), "Status", (short)CallCustomerStatus.Open));
Collection<BoardQueue> collBoardQueue = new ServiceFacade(User).SelectList<BoardQueue>(cc);
if (collBoardQueue.Count != 0)
{
Counter counter = new ServiceFacade(User).SelectById<Counter>(collBoardQueue[0].CounterID);
lblHeaderLoket.Text = counter.Name;
lblHeaderPlatNumber.Text = collBoardQueue[0].PlatNumber;
}
else
{
lblHeaderLoket.Text = "-";
lblHeaderPlatNumber.Text = "-";
}
}
笏我想是刷新只有div的,而不是整个页面。每次刷新时,它都会从数据库中获取最新数据。
您将不得不使用jQuery AJAX函数。
你必须创建一个文件,你要在ajax中调用并发布到你的div。
有一个为例:
AJAX一部分(在JS):
var oAjaxCall = $.ajax({
type: "POST",
url: "./someAction.php",
success: function(data){
$('#refreshDiv').html(data);
}
});
data
是someAction.php
回归。请记住:您不能在someAction.php
中执行“退货”。如果您使用PHP或通常在HTML中显示,则应使用echo
来回显您的内容。
,将创建内容(someAction.php)文件:如果你想叫它1分钟的后为例,使用的setInterval()
echo 'Hello world !';
;
Here的jQuery Ajax函数文档,你可以找到setInterval函数here的文档。
如果你愿意,我可以写一个小功能,向您展示如何做到这一点:)
我忘了告诉你。 'data'是'someAction.php'的返回。如果你不明白我的答案,但很抱歉,我不会说英语。 – SatanicGeek
你可以编辑你的答案并添加此评论。 –
Wow'SatanicGeek'...你必须使用'eval()'很多 –
1. jQuery的方法
我看到,有没有点,如果你正在使用ASP。网络服务器控件更新客户端控件中的表。 我建议使用jQuery Ajax来调用一个Web方法,该方法返回更新数据并将其列在HTML表格中。这比使用服务器控制更轻量级的解决方案。
2.服务器控制方法
您通过刷新div
每个区间意味着可能会使用UpdatePanel
服务器控制什么。您将GridView
放入ContentTemplate
的UpdatePanel
之内。并将UpdateMode
设置为conditional
。
最终,您的UpdatePanel
将呈现为div
。你可以给它命名任何类。
虽然,您也有一个Timer
控件,它会更新您的UpdatePanel
为x
秒。
如果您希望在每隔“N”秒间隔后重新加载Div/Table数据,请使用jQuery SetInterval方法。
在设置的Interval内部,您可以调用Ajax调用并更新Ajax成功块中的数据。
例:
setInterval(function(){
$.ajax({
url: "YouUrl",
success: function(response){
//Code to update the Table or Div
}
});
}, 3000);
会有什么'refresh'吗? – void
@void所以我有一个gridview里面的数据是从数据库的数据库。所以每次刷新我希望它从数据库中获得新数据 –
为此,你应该准备好'AJAX' – void