zoukankan      html  css  js  c++  java
  • 关于UpdatePanel和页面刷新的问题

    今天做了一个ajax.net的东西,虽然实现了功能,但是无意间发现了一个小问题,原本以为做有什么问题了,后来发现这个问题很有意思,放出来看看!

    这是个两级下来框的例子:

    Code
    asp:UpdatePanel ID="UpdatePanel1" runat="server">
            
    <ContentTemplate>
            
    <asp:DropDownList ID="dpdCateslst" runat="server" AutoPostBack=true 
                onselectedindexchanged
    ="dpdCateslst_SelectedIndexChanged"></asp:DropDownList>     
            
    <asp:DropDownList ID="dpdchilds" runat="server"></asp:DropDownList>
            
    </ContentTemplate>
            
    <Triggers>
            
    <asp:AsyncPostBackTrigger ControlID="dpdCateslst" />
            
    </Triggers>        
            
    </asp:UpdatePanel>

    以上是页面的代码,后台的代码我想 不写也知道了。

    现在我的问题出现了:

    当我第一次加载页面的时候,可以像我认为的那样来实现无刷新的效果,这个很好。
    但是问题是,当我选择了一级下拉框的时候,选择一次,然后我点击页面右键:刷新,然后我再来选择一次一级框,最后再点击一次右键刷新,问题出来了,我发现又出现了“重试”的按钮,试验了n次后,还是找不到问题的原因所在,后来我在发现第二次选择下拉框的时候叶面积的确是刷新了一次,那么“重试”的按钮是必然会出现的。

    原先觉得是页面加载的问题,在无刷新的状态下,点击刷新页面,会造成页面重新加载。但是后来一想ms的控件都是基于viewstate的,那么说明UpdatePanel的信息也写在viewstate中,只是由ScriptManager来处理这些页面信息,然后读出来,整个过程是js来处理的,所以是无刷新的,但是“重试”以后,页面是怎样的一个状态我就搞不懂了。。。

  • 相关阅读:
    基于 bootstrap html 响应式 布局
    柱状图 线状图 填写数据
    代码 比较工具 在线
    WEB框架之Flask
    测试学习方向
    软件测试的定义及其分类
    新博客人
    实现人脸识别性别之路---制作训练集中使用到的函数
    实现人脸识别性别之路---制作自己的训练集并读取
    实现人脸识别性别之路---opencv
  • 原文地址:https://www.cnblogs.com/Longkin/p/1409864.html
Copyright © 2011-2022 走看看