简体   繁体   English

如何在回发时阻止页面刷新?

[英]how to prevent page refresh while doing postback?

I want to display a pop up on each div click.the divs will create dynamically and each is boxes.I want to display some database values inside my pop up.I used hidden field(to get id) as a control parameter in sql datasource.To get the hidden field values on each click from c#,i used some _dopostback in javascript of my pop up plug in. This causes page loading on every refresh and hence I cant display proper values in my popup on each click. 我想在每个div上显示一个弹出窗口。div会动态创建,每个都是盒子。我想在弹出窗口中显示一些数据库值。我使用隐藏字段(获取id)作为sql datasource中的控件参数。为了从c#中获取每次点击的隐藏字段值,我在弹出插件的javascript中使用了一些_dopostback。这会导致每次刷新时加载页面,因此我无法在每次单击时在弹出窗口中显示正确的值。 How can i avoid page refresh? 我怎样才能避免页面刷新? my javascript code: 我的javascript代码:

in pop up function i called 在我打电话的弹出功能

__doPostBack('TestFunctionPostBack', comp_id);

c# code in page load 页面加载中的c#代码

 this.GetPostBackEventReference(this, string.Empty);

        if (this.IsPostBack)
        {
            string eventTarget = (this.Request["__EVENTTARGET"] == null) ? string.Empty : this.Request["__EVENTTARGET"];
            string eventArgument = (this.Request["__EVENTARGUMENT"] == null) ? string.Empty : this.Request["__EVENTARGUMENT"];

            if (eventTarget == "TestFunctionPostBack")
            {               
                HiddenField1.Value = eventArgument;

            }

        }

You can use AJAX to avoid a full page post back. 您可以使用AJAX来避免整页回发。

You could easily add an UpdatePanel for a partial post back. 您可以轻松地为部分回发添加UpdatePanel Or, even better, use a javascript framework such as jQuery . 或者,更好的是,使用jQuery等javascript框架。

使用Ajax调用服务器端方法然后在UI上呈现内容查看以下示例http://weblogs.asp.net/craigshoemaker/archive/2008/09/29/using-jquery-to-call-asp-net- Ajax的页面methods.aspx

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM