当点击来自updatepanel的按钮时,来自page_load的更新查询会一次又一次地执行

时间:2012-08-08 06:57:47

标签: asp.net

我在page_load()上有一个更新查询。我在页面上有一个按钮。 我只想执行一次该查询,但是当我点击按钮时,页面会再次加载。

因此我将该按钮放在更新面板中。 现在当我点击按钮时,页面似乎没有重新加载,但是正在执行更新查询。

可能是什么问题?

3 个答案:

答案 0 :(得分:1)

USE **ISPOSTBACK** PROPERTY IN YOUR **PAGELOAD.**

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
    {
       //RUN UR UPDATE QUERY HERE
    }
}

答案 1 :(得分:0)

在Page_Load方法中添加以下内容

if(!IsPostBack)
{
 //Run update query
}

答案 2 :(得分:0)

使用UpdatePanel时,您的页面可能看起来不会刷新,但实际上您的整个页面生命周期都会执行。这是通过AJAX请求完成的,该请求只刷新更新面板中的部件。对于这种情况,您不需要UpdatPanel。

如果当前请求是Page_Load,您需要检查Postback函数。 PostBack意味着页面上的用户操作已执行,并且将运行事件。如果是,您知道您不需要运行查询。

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
    {
       // Run query
    }
}

UpdatePanels可能会让你错误地使用AJAX,但在内部它们会运行整个页面生命周期,它们与真正的AJAX请求不同。