signin-isc
Version:
isc登录
37 lines • 1.57 kB
JavaScript
export function GetQueryValue(queryName) {
var query = decodeURI(window.location.search.substring(1));
var vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
if (pair[0] == queryName) { return pair[1]; }
}
return null;
}
export function ridUrlParam(url, aParam) {
aParam.forEach(item => {
const fromindex = url.indexOf(`${item}=`) //必须加=号,避免参数值中包含item字符串
if (fromindex !== -1) {
const startIndex = url.indexOf('=', fromindex)
const endIndex = url.indexOf('&', fromindex)
const hashIndex = url.indexOf('#', fromindex)
let reg;
if (endIndex !== -1) { // 后面还有search参数的情况
const num = endIndex - startIndex
reg = new RegExp(`${item}=.{${num}}`)
url = url.replace(reg, '')
} else if (hashIndex !== -1) { // 有hash参数的情况
const num = hashIndex - startIndex - 1
reg = new RegExp(`&?${item}=.{${num}}`)
url = url.replace(reg, '')
} else { // search参数在最后或只有一个参数的情况
reg = new RegExp(`&?${item}=.+`)
url = url.replace(reg, '')
}
}
});
const noSearchParam = url.indexOf('=')
if( noSearchParam === -1 ) {
url = url.replace(/\?/, '') // 如果已经没有参数,删除?号
}
return url
}