zoukankan      html  css  js  c++  java
  • 页面开发小总结

    1.页面开发时,在页面中对同一url链接可以多次访问,这时不同的浏览器可能处理方式不同,如IE(我测试是用的是IE11)可能是浏览器本身缓存的缘故,会拒绝访问。

    这时我得解决办法是,在每一个url访问时后面多加一个时间搓的参数,如

    var timestamp = new Date().getTime();
    window.location.href ="index?ts="+timestamp;

    这样可以有效的防止一下现象。

    同时还有一种方法同样可以解决,因为我的项目中用了jquery,所以我在每个页面的js中加上如下语句

    $.ajaxSetup ({
        cache: false //设置成false将不会从浏览器缓存读取信息
    });

    2.在jsp页面开发时,会遇到页面跳转路径的问题,如相对路径、绝对路径。因为jsp的访问时通过servlet或是用struct的action等时,这样和本地访问或是直接访问页面的路径不一样了。

       所以我通过用basepath的方式解决访问路径混乱的问题。

       首页,我在公用的jsp头文件会加上下面的话

     <%  
     String path = request.getContextPath();  
     String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;  
     System.out.println("basePath===>>"+basePath);
     %> 

       上面的语句应该输出http://ip:端口,作为basepath

        然后可以在<head>标签中加上

    <base href="<%=basepath %>" />

       或是

    <input type="hidden" id="basepath" value="<%=basePath %>" />

     是别的页面可以获取到basepath的值。这里我推荐用后一种方法。

     这时,在jsp中如果想跳转页面或是请求action时,就应该

    var timestamp = new Date().getTime();
    var basepath = $("#basepath").val();
    window.location.href = basepath+"/doIndex?ts="+timestamp;

    3.如何用获取base标签中href的值

    var href = $("base")[0].href
  • 相关阅读:
    python安装cnstd卡住
    _、__、__xx__之间的差别
    Celery模块使用
    同一主机,开启多个不同端口的redis进程
    php配置变更记录
    Linux安装Nodejs
    ElasticSearch中term和match探索
    Centos安装elasticsearch,php连接使用
    centos8自定义目录安装php7.3
    centos8自定义目录安装nginx
  • 原文地址:https://www.cnblogs.com/hellowoody/p/4316260.html
Copyright © 2011-2022 走看看