• ASP.NET学习4. ASP.NET Ajax下POST完成后调用javascript函数


    1.网页的布局有一个专门的Javascript函数adjustOfPage()函数,在页面加载前调用,适用Jquery的$(document).ready();方法:

            $(document).ready(function adjustOfPage() {
                document.getElementById("Screen").width = screen.width - 50;
                document.getElementById("Navigator").width = screen.width - 50;
                document.getElementById("cell_table").width = screen.width - 50 - 213 - 14;
                document.getElementById("navi_end").width = screen.width - 50 - 926;
            });

    由于调用了该方法,页面可根据桌面分辨率的大小自动的调整。

    2.但是当我操作一次页面的上面按钮控件之后,也即一个POST操作,后台的处理完成之后回到原先的页面,布局变的凌乱了!

    因为此时页面是局部更新的,没有对整个页面重新生成一次,adjustOfPage()没有被调用。

    3.于是我想办法去调用这个前端的脚本,想到了之前的ClientScriptManager对象的RegisterClientScriptBlock和RegisterStartupScript方法,以为这个方法的作用是后台在任何时候都可以向前台制定需要其执行的脚本,其实不然。

    两种方法有些类似都是后台向页面注册一个脚本块,至于什么后执行却不能确定。RegisterStartupScript方法注册的脚本必须是在页面加载的时候才能执行。

    4.经过请教懂的同学,了解到,POST操作一般有两种:

    (1).一中是普通的POST,这中情况下每次POST返回时,整个页面都要重新加载;

    (2).另一种是在Ajax框架下的POST,此时需要在加一段代码

        <script type="text/javascript" language="javascript">
            Sys.WebForms.PageRequestManager.getInstance().add_endRequest(adjustOfPage);
        </script>

    详细的适用方法见MSDN:http://msdn.microsoft.com/zh-cn/library/bb383810(v=vs.100).aspx

  • 相关阅读:
    Django model转字典的几种方法
    使用Nagios打造专业的业务状态监控
    Etcd安全配置之Basic Auth认证
    ELK日志系统之通用应用程序日志接入方案
    ELK日志系统之使用Rsyslog快速方便的收集Nginx日志
    中小团队落地配置中心详解
    ELK构建MySQL慢日志收集平台详解
    Django model select的各种用法详解
    Python:每日一题003
    Python:每日一题002
  • 原文地址:https://www.cnblogs.com/superdaddy/p/3137986.html
Copyright © 2020-2023  润新知