asp.net回调更新gridview
以前写过关于回调的代码,今天想用的时候又找不到了,费了好大劲才搞定,纪录一下,以备后用。
其实比较简单,关键是最后一行调用的函数renderGrid(_grid)。
public string sCallBackFunctionInvocation;
string returnstring;
protected void Page_Load(object sender, EventArgs e)
{
sCallBackFunctionInvocation = Page.ClientScript.GetCallbackEventReference(this, "message", "processMyResult", "context", "postMyError", true);
}
#region ICallbackEventHandler Members
string ICallbackEventHandler.GetCallbackResult()
{
return returnstring;
}
void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
{
if (eventArgument == "getservertime")
{
//returnstring = DateTime.Now.ToString();
_grid.DataSource = _sampleData;
_grid.DataBind();
renderGrid(_grid);
}
}
利用ASP.NET中最为强大的特性 - RenderControl。该方法能使我们方便地在服务器端 通过HtmlTextWriter和StirngWriter对象访问到控件的HTML代码。
private void renderGrid(GridView _grid)
{
using ( StringWriter sw = new StringWriter())
{
HtmlTextWriter htw = new HtmlTextWriter(sw);
_grid.RenderControl(htw);
htw.Flush();
returnstring = sw.ToString();
}
}
前台响应函数是:
function processMyResult(returnmessage, context){
window.document.getElementById('Gridview').innerHTML = returnmessage;
}
这样就实现了通过回调函数局部更新gridview。
相关文档:
在Web编程过程中,存在着很多安全隐患。比如在以前的ASP版本中,Cookie为访问者和编程者都提供了方便,并没有提供加密的功能。打开IE浏览器,选择“工具”菜单里的“Internet选项”,然后在弹出的对话框里单击“设置”按钮,选择“查看文件”按钮,在弹出的窗口中,就会显示硬盘里 ......
<connectionStrings>
<add name="qxConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Web/App_Data/db2.mdb;" providerName="System.Data.OleDb"/>
</connectionStrings> ......
1. 使用QueryString变量
QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子:
a.aspx的C#代码
private void Button1_Click(object se ......
记取记录集
create procedure getArticle
as
select * from Article_Content
GO
asp.net 调用方法
SqlConnection Conn = new SqlConnection();
Conn.ConnectionString = Data.Connstr();
Conn.Open();
......
aspx页面中事件的执行顺序
1.asp.net的请求过程,以及对应的处理请求的dll
客户的请求页面由aspnet_isapi.dll这个动态连接库来处理,把请求的aspx文件发送给CLR进行编译执行,然后把Html流返回给浏览器
2.页面事件(按照事件的执行顺序排列)
Page_Init:初始化值或连接
Page_Load:主要使用IsPostBack,该事件主要执行 ......