我也是 ASP.Net 和 AJAX 的新手。
我正在编写一个论坛。我的showcomment.aspx
页面,我使用 Repeater 从 SQL 数据库中获取评论并在每个主题中显示它们。
我使用 UpdatePanel 自动更新插入到数据库中的新评论。
<div onclick="__doPostBack('UpdatePanel1', '');">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" OnLoad="UpdatePanel1_Load">
<ContentTemplate>
<asp:Repeater ID="RepeaterComment" runat="server">
....
</asp: Repeater...>
</ContentTemplate>
</asp: UpdatePanel>
功能UpdatePanel1_Load():
public void UpdatePanel1_Load(Object sender, EventArgs e)
{
BindRepeaterComment();
}
似乎需要一个PageMethod
或function
或jquery
(但我以前从未编写过 jquery)来实现何时将新行插入数据库。
如何检查数据库更改然后应用到 UpdatePanel ???
更新:
看看下面我的 BindRepeaterCommment 函数:
private void BindRepeaterComment(int idtopic)
{
string sql = "select * from COMMENT where idTOPIC="+idtopic;
DataTable comment = l.EXECUTEQUERYSQL(sql);
RepeaterComment.DataSource = comment;
RepeaterComment.DataBind();
}
我还建议使用 Timer 控件每 5 秒重新读取一次 UpdatePanel,但我只希望它在数据库更改时自动更新(插入新行)