JS操作URL

function getQueStr(url, ref) //取获参数值
{
    var str = url.substr(url.indexOf(‘?‘) + 1);
    if (str.indexOf(‘&‘) != -1) {
        var arr = str.split(‘&‘);
        for (i in arr) {
            if (arr[i].split(‘=‘)[0] == ref)
                return arr[i].split(‘=‘)[1];
        }
    }
    else {
        return url.substr(url.indexOf(‘=‘) + 1)
    }
}

function setQueStr(url, ref, value) //设置参数值
{
    var str = "";
    if (url.indexOf(‘?‘) != -1)
        str = url.substr(url.indexOf(‘?‘) + 1);
    else
        return url + "?" + ref + "=" + value;
    var returnurl = "";
    var setparam = "";
    var arr;
    var modify = "0";

    if (str.indexOf(‘&‘) != -1) {
        arr = str.split(‘&‘);

        for (i in arr) {
            if (arr[i].split(‘=‘)[0] == ref) {
                setparam = value;
                modify = "1";
            }
            else {
                setparam = arr[i].split(‘=‘)[1];
            }
            returnurl = returnurl + arr[i].split(‘=‘)[0] + "=" + setparam + "&";
        }

        returnurl = returnurl.substr(0, returnurl.length - 1);

        if (modify == "0")
            if (returnurl == str)
                returnurl = returnurl + "&" + ref + "=" + value;
    }
    else {
        if (str.indexOf(‘=‘) != -1) {
            arr = str.split(‘=‘);

            if (arr[0] == ref) {
                setparam = value;
                modify = "1";
            }
            else {
                setparam = arr[1];
            }
            returnurl = arr[0] + "=" + setparam;
            if (modify == "0")
                if (returnurl == str)
                    returnurl = returnurl + "&" + ref + "=" + value;
        }
        else
            returnurl = ref + "=" + value;
    }
    return url.substr(0, url.indexOf(‘?‘)) + "?" + returnurl;
}

function delQueStr(url, ref) //删除参数值
{
    var str = "";

    if (url.indexOf(‘?‘) != -1)
        str = url.substr(url.indexOf(‘?‘) + 1);
    else
        return url;
    var arr = "";
    var returnurl = "";
    var setparam = "";
    if (str.indexOf(‘&‘) != -1) {
        arr = str.split(‘&‘);
        for (i in arr) {
            if (arr[i].split(‘=‘)[0] != ref) {
                returnurl = returnurl + arr[i].split(‘=‘)[0] + "=" + arr[i].split(‘=‘)[1] + "&";
            }
        }
        return url.substr(0, url.indexOf(‘?‘)) + "?" + returnurl.substr(0, returnurl.length - 1);
    }
    else {
        arr = str.split(‘=‘);
        if (arr[0] == ref)
            return url.substr(0, url.indexOf(‘?‘));
        else
            return url;
    }
}
时间: 2024-10-28 18:38:13

JS操作URL的相关文章

JS 操作Url参数

项目中需要JS操作路径参数,小弟不才,不跳会,因此查了一下,总结一下使用方法 <script type="text/javascript"> //运用 window.onload = function () { var Request = new Object(); Request = GetRequest(); var urlPara = Request['isChecked']; if (urlPara != null && urlPara != &qu

js操作url的常用函数

1. //替换指定传入参数的值,paramName为参数,replaceWith为新值 function replaceParamVal(oUrl,paramName, replaceWith) { var re = eval('/(' + paramName + '=)([^&]*)/gi'); var nUrl = oUrl.replace(re, paramName + '=' + replaceWith); return nUrl; } 2.//向URL中添加参数,如果参数存在替换参数的

Jquery轻量级插件--操作URL

调用: > "?action=view&section=info&id=123&debug&testy[]=true&testy[]=false&testy[]"var test= $.query.get('section'); "info" jquery.query.js new function(settings) {   // Various Settings  var $separator = setti

node.js零基础详细教程(7):node.js操作mongodb,及操作方法的封装

第七章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. node.js操作mangodb 创建一个用于放置今天文件的文件夹,npm init初始化一下,并创建demo1.js用于写node代码 使用 npm install mongodb,将mongodb控制模块安装到本地 在demo1.js中写

JS 操作 AJAX

JS 操作 AJAX Table of Contents API 同步和异步 ajax / text server get post ajax / json server get post ajax / xml server get post 跨域 相关阅读 API onreadystatechange 指定当 readyState 属性改变时的事件处理句柄 readyState 返回当前请求的状态 responseBody 将回应信息正文以 unsigned byte 数组形式返回 respo

通过JS操作CSS

动态效果如图所示: 第一种实现方法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-e

JQuery和JS操作LocalStorage/SessionStorage的方法

JQuery和JS操作LocalStorage/SessionStorage的方法 LocalStorage 是对Cookie的优化 没有时间限制的数据存储 在隐私模式下不可读取 大小限制在500万字符左右,各个浏览器不一致 在所有同源窗口中都是共享的 本质是在读写文件,数据多的话会比较卡(firefox会一次性将数据导入内存) 不能被爬虫爬取,不要用它完全取代URL传参 IE7及以下不支持外,其他标准浏览器都完全支持 SessionStorage 针对一个 session 的数据存储 大小限制

JQuery和JS操作LocalStorage/SessionStorage的方法(转)

出处:http://blog.csdn.net/djzhao627/article/details/50747628 首先说一下LocalStorage和SessionStorage LocalStorage 是对Cookie的优化 没有时间限制的数据存储 在隐私模式下不可读取 大小限制在500万字符左右,各个浏览器不一致 在所有同源窗口中都是共享的 本质是在读写文件,数据多的话会比较卡(firefox会一次性将数据导入内存) 不能被爬虫爬取,不要用它完全取代URL传参 IE7及以下不支持外,其

js操作window

js操作window 常用属性 window.closed // window是否关闭 window.length // iframe个数 window.name // 获取和设置window的名字 window.innerHeight // window的高度 window.innerWidth // window的宽度 window.screenX // 鼠标距离window的左边距 window.screenY // 鼠标距离window的上边距 window.location // 获取