如何停止刷新页面

How to stop refreshing the page

是否有机会在每次按下时停止页面刷新control

例如:我更改了DropDownList的选择,页面刷新。就是感觉怪怪的。

我用表单标签做的runat="server"

尝试使用 UpdatePanel and here you can find how to use the update Panel 示例代码。

停止刷新的最简单方法

关于回发: PostBack 是将 ASP.NET 页面提交给服务器进行处理的过程的名称。如果要根据某些来源检查页面的某些凭据(例如使用数据库验证用户名和密码),则完成回发。这是客户端机器无法完成的事情,因此这些细节必须 'posted back' 到服务器。

ASP.NET中的AutoPostBack属性是什么:

如果我们创建一个网页,其中包含一个或多个配置为使用 AutoPostBack 的 Web 控件(每个 Web 控件都会有自己的 AutoPostBack 属性), ASP.NET 将一个特殊的 JavaScipt 函数添加到呈现的 HTML 页面。这个函数被命名为 _doPostBack() 。调用时,它会触发 PostBack,将数据发送回 Web 服务器。

Understanding PostBack

尝试使用触发器为下拉菜单添加更新面板

<asp:UpdatePanel ID="upSetSession" runat="server">
        <ContentTemplate>
            <asp:DropDownList ID="ddlMyList" runat="server" 
                onselectedindexchanged="ddlMyList_SelectedIndexChanged"
                AutoPostBack="true">
                <asp:ListItem>Select One</asp:ListItem>
                <asp:ListItem>Maybe</asp:ListItem>
                <asp:ListItem>Yes</asp:ListItem>
            </asp:DropDownList>
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="ddlMyList" 
                EventName="SelectedIndexChanged" />
        </Triggers>
</asp:UpdatePanel>

来自asp.net

Perhaps the most visible feature of the ASP.NET AJAX Extensions is the ability to do a partial or incremental page updates without doing a full postback to the server, with no code changes and minimal markup changes. The advantages are extensive – the state of your multimedia (such as Adobe Flash or Windows Media) is unchanged, bandwidth costs are reduced, and the client does not experience the flicker usually associated with a postback.

将部分渲染集成到您的项目中。看看 this link.

此外 OnClientClick="return false;" 可能会有所帮助,但在每个按钮上添加 OnClientClick="return false;" 并不是一个好主意。部分渲染和 AJAX 是更好的解决方案。