在ASP.NET中,如何在不刷新页面的情况下对sqldatareader数据进行jquery/ajax刷新

本文关键字:刷新 sqldatareader 数据 ajax jquery 情况下 NET ASP | 更新日期: 2023-09-27 18:23:51

我有一个sqldatareader在页面加载时在页面上吐出SQL数据,但我想添加一个功能,让jquery按钮点击,从一组新的结果中向用户刷新数据,而不刷新整个页面。

不过,我还是个初学者,很难弄清楚从哪里开始。

我的ASPX 中有以下DIV内容

<div id="blockOver">
<% while (Reader.Read()) {
   string filename = Reader.GetString(1);
   string date = Reader.GetSqlDateTime(3).ToString();
   string filetype = Reader.GetString(4);
   Int32 height = (Int32)Reader.GetSqlInt32(5);
   Int32 width = (Int32)Reader.GetSqlInt32(6);
   string uploadGroup = Reader.GetString(7);
   string title = Reader.GetString(8);
   string uniqueID = Reader.GetString(9);
   string uploader = Reader.GetString(10);
   string uniqueIDnoExt = Reader.GetString(12);
%>
<div class="block">
    <a href="#t=<%= uniqueID %>" onmouseover="defaultJs.displayInfo ('<%= title %>', '<%= date %>', '<%= filetype %>', '<%= uniqueIDnoExt %>')" onclick="defaultJs.showFile('<%= title %>', '<%= date %>', '<%= filetype %>', '<%= uniqueIDnoExt %>', '<%= uniqueID %>')" onmouseout="defaultJs.hideInfo()">
    <img title="<%= title %>" src="thumbs/<%= uniqueIDnoExt %>.jpg" />
    </a>
</div>
<% } %>

在我的ASPX.CS中,我有:

public partial class _Default : System.Web.UI.Page
{
private SqlDataReader reader = null;
public SqlDataReader Reader { get { return reader; } set { reader = value; } }
    protected void Page_Load(object sender, EventArgs e)
    {
    string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();
    SqlConnection connection = new SqlConnection(connectionString);
    connection.Open();
    SqlCommand command = new SqlCommand("SELECT * FROM uploads ORDER BY id DESC", connection);
    command.Parameters.Add(new SqlParameter("uploader", "anonymous"));
    Reader = command.ExecuteReader();
    }
}

这适用于在页面加载时加载数据,但我现在想做的是合并jquery/ajax,以便能够在jquery调用中刷新此数据,而不刷新整个页面。

我真的不确定从哪里开始,我相信这是你们的第二天性,有人能给我指一些简单的来源或提供一些示例代码吗?真的很感激,谢谢。

在ASP.NET中,如何在不刷新页面的情况下对sqldatareader数据进行jquery/ajax刷新

您需要了解一下jquery,它完全是客户端的。这是一些在互联网浏览器中执行的javascript代码。

Jquery是一个用于进行DOM操作(查找、修改、添加HTML元素)和ajax调用的问候库。

您需要将ajax调用连接到一些东西:HTML控件(按钮、选项卡等)或javascript计时器。

此外,如果您实现ajax调用,这意味着您必须在服务器端公开RESTWeb服务(响应HTTPGET或POST调用的东西)。

如果您使用的是Asp.net Web Forms,您可能会发现烘焙到框架中的部分页面更新更容易。jQuery很好,但很难集成到Asp.netWebForms回发模型中。

http://www.asp.net/web-forms/tutorials/aspnet-ajax/understanding-partial-page-updates-with-asp-net-ajax

使用ASP UpdatePannel,它可以在不回发的情况下部分呈现页面的部分。如果你使用ASP.net ,它真的很容易使用

<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
  <ContentTemplate>
    <div id="blockOver">
       ...Your code...
    </div>
   </ContentTemplate>
</asp:UpdatePanel>