如何在跳转页的js中获得search.jsp?flag="+flag 中flag的值?

跳转前的页:
var url = "search.jsp?flag="+flag
window.location.href=url;
如何在search.jsp中js获得flag的值?

<% String flag=request.getParameter("flag"); %>这样alert出来是object HTMLInputElement呢

阅读 2.3k
1 个回答
function getParamName(attr) { //兼容IE9以下浏览器
        var obj = {};
        var sesrch = window.location.search;
        var arr_search = sesrch.split('?')[1];
        arr_search = arr_search.split('&');
        for (var i = 0; i < arr_search.length; i++) {
            var target = arr_search[i].split('=');
            obj[target[0]] = target[1];
        }
        return obj[attr];
    }
    //getParamName('flag');

    function getParamName(attr) { //数组forEach方法实现
        var obj = {};
        window.location.search.split('?')[1].split('&').forEach(function(item, index) {
            obj[item.split('=')[0]] = item.split('=')[1];
        });
        return obj[attr];
    }
    //getParamName('flag');

    function getParamName(attr) { //数组filter方法实现
        var obj = {};
        var newarr = window.location.search.split('?')[1].split('&').filter(function(item, index) {
            return item.split('=')[0] == attr;
        });
        return newarr[0].split('=')[1];
    }
    //getParamName('flag');

    function getParamName(name) {//正则表达式实现
        var match = RegExp('[?&]' + name + '=([^&]*)')
            .exec(window.location.search);
        return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
    };
    //getParamName('flag');

平时自己写的几种方法,仅供参考,我推荐最后正则那个,简单粗暴

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题