我有一个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调用上刷新这些数据,而不刷新整个页面。
我不确定从哪里开始,我确定这是你们的第二天性,有人能指点我一些简单的思想来源或提供一些示例代码吗?非常感谢。谢谢。
答案 0 :(得分:1)
如果您使用的是Asp.net Web窗体,您可能会发现更容易融入框架的部分页面更新。 jQuery很棒,但是很难集成到Asp.net Web Forms回发模型中。
答案 1 :(得分:1)
使用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>
答案 2 :(得分:1)
你需要阅读一些完全是客户端的jquery。这是在Internet浏览器中执行的一些JavaScript代码。
Jquery是一个用于执行DOM操作(查找,修改,添加HTML元素)和ajax调用的greet库。
您需要将ajax调用连接到某些内容:HTML控件(按钮,选项卡等)或javascript计时器。
此外,如果您实现ajax调用,则意味着您必须在服务器端公开REST Web服务(响应HTTP GET或POST调用的内容)。