zoukankan      html  css  js  c++  java
  • URL编码和解码的一个小问题(JS方法和JAVA方法)

    var href = window.location.href;
            var existAffirm = href.indexOf("?")
            if(existAffirm!=-1){
                var subText = href.split("?");
                $("#searchSubmit").val(subText[1]);
                var arr = href.split("&");
                var title = arr[0].split("title=");
                $("#searchInput").val(title[1]);
            }

    在执行上一段代码时,若地址栏包含中文字符,则取到的title为url编码之后的数据。

    所以在设置searchInput这个输入框的val的时候,需要对title进行URL解码。

    由于 ECMAScript v3 已从标准中删除了 unescape() 函数,并反对使用它,因此应该用 decodeURI() 和 decodeURIComponent() 取而代之。

    所以最终代码为

    var href = window.location.href;
            var existAffirm = href.indexOf("?")
            if(existAffirm!=-1){
                var subText = href.split("?");
                $("#searchSubmit").val(subText[1]);
                var arr = href.split("&");
                var title = arr[0].split("title=");
                $("#searchInput").val(decodeURI(title[1]));
            }

     当然 也可以在后台进行解码

    URLDecoder.decode(searchText, "utf-8");

    返回值就是解码后的字符串了

  • 相关阅读:
    spring boot指定外部配置的坑
    beego 批量删除问题
    spark 安装
    HttpServletRequest 获取cookie
    k8s 代码生成
    k8s 各种示例
    mysql-operator
    k8s Docker私有仓库认证
    Failed to introspect annotated methods on class 异常
    P6272 没有人的算术
  • 原文地址:https://www.cnblogs.com/handsomejunhong/p/8424554.html
Copyright © 2011-2022 走看看