获取地址栏参数,json遍历
1. 获取地址栏参数
GetQueryString: function(name){ // 获取地址栏参数
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return decodeURIComponent(r[2]); return null;
}
2. 如果有一个结构比较深的json表,需要通过属性去遍历他的层次
function deepJson(obj, page) {
var result = {};
; (function walkTree(obj, page) {
for (key in obj) {
if (key == page) {
result = obj[key];
break;
} else if (obj[key].subMenu) {
walkTree(obj[key].subMenu, page);
}
}
})(obj, page);
return result;
}
var htmlconfig = {
system: {
text: '系统配置',
subMenu: {
account: {
text: '账号管理',
crumbs: 'system/account',
url: '#system/account'
},
role: {
text: '角色管理',
crumbs: 'system/role',
url: '#system/role'
},
function: {
text: '功能管理',
crumbs: 'system/function',
url: '#system/function'
},
permission: {
text: '权限设置',
crumbs: 'system/permission',
url: '#system/permission'
},
schedule: {
text: '任务调度',
crumbs: 'system/schedule',
url: '#system/schedule/index',
subMenu: {
service: {
text: '服务配置',
crumbs: 'system/schedule/service',
url: '#system/schedule/service',
subMenu: {
work: {
text: '任务作业配置表',
crumbs: 'system/schedule/service/work',
url: '#system/schedule/work'
},
}
}
}
},
config: {
text: '配置设置',
crumbs: 'system/config',
url: '#system/config'
}
}
}
}
}
};
module.exports = htmlconfig;
deepJson(htmlconfig,'service')
//根据路由确定面包屑的菜单
function deepJsonMenu(page) {
var result = {},
obj = utilSys.crumbConfig;
var menu = page.split('/'),
testObj = {};
var firstLevel = obj[menu[0]];
var otherObj = firstLevel;
testObj[0] = firstLevel;
for (var i = 1, len = menu.length; i < len; i++) {
testObj[i] = otherObj.subMenu[menu[i]];
otherObj = testObj[i];
}
return testObj;
}
deepJsonMenu('#system/config')
获取地址栏参数,json遍历的更多相关文章
- 用JS获取地址栏参数的方法
采用正则表达式获取地址栏参数: function GetQueryString(name) { var reg = new RegExp("(^|&)"+ nam ...
- 用JS获取地址栏参数的方法(超级简单)
方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg = new RegExp("( ...
- JS获取地址栏参数
获取地址栏参数(其中name为你所需要的参数值) function GetQueryString(name) { var reg = new RegExp("(^|&)" ...
- JS 获取 地址栏 参数
法一:正则表达式 /** * 采用正则表达式获取地址栏参数: **/ var GetQueryString = function (name) { var reg = new RegExp(" ...
- 用JavaScript获取地址栏参数的方法
/** * 获取地址栏参数 * * @example GetUrlString('id') * * @desc 调用时加上判断,保证程序不会出错 * var myurl = GetUrlString( ...
- 【2017-06-27】Js中获取地址栏参数、Js中字符串截取
一.Js中获取地址栏参数 //从地址栏获取想要的参数 function GetQueryString(name) { var reg = new RegExp("(^|&)" ...
- 【功能代码】---4用JS获取地址栏参数方法
用JS获取地址栏参数方法 // 方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg = new Reg ...
- (转)用JS获取地址栏参数的方法(超级简单)
转自http://www.cnblogs.com/fishtreeyu/archive/2011/02/27/1966178.html 用JS获取地址栏参数的方法(超级简单) 方法一:采用正则表达式获 ...
- vue项目获取地址栏参数(非路由传参)
在项目中,遇到一个需求,就是另一个系统直接跳转到我们项目中的某个页面,不需要做用户的校验直接单纯的跳转新页面,再初始化查询数据,参数以地址栏的形式传入 由于原来项目做过权限控制,所以在路由那边需要进行 ...
随机推荐
- 如何選擇最佳的 Wi-Fi 無線網路頻道,獲得最佳的傳輸速度(转载)
转自:https://blog.gtwang.org/useful-tools/how-to-find-the-best-wi-fi-channel-for-your-router/
- Jinkins定时任务设置
设置的地方在构建触发器中 Build after other projects are built:在其他项目构建完成后再进行构建. Build periodically:周期进行构建 Build w ...
- junit 直接执行测试方法报错
在eclipse中,直接右击test1->Run As->Junit Test,报下面的错: java.lang.NoSuchMethodError: org.junit.runner.R ...
- Netty入门系列(2) --使用Netty解决粘包和拆包问题
前言 上一篇我们介绍了如果使用Netty来开发一个简单的服务端和客户端,接下来我们来讨论如何使用解码器来解决TCP的粘包和拆包问题 TCP为什么会粘包/拆包 我们知道,TCP是以一种流的方式来进行网络 ...
- 给出每个员工每年薪水涨幅超过5000的员工编号emp_no、薪水变更开始日期from_date以及薪水涨幅值salary_growth,并按照salary_growth逆序排列。
题目描述 给出每个员工每年薪水涨幅超过5000的员工编号emp_no.薪水变更开始日期from_date以及薪水涨幅值salary_growth,并按照salary_growth逆序排列. 提示:在s ...
- git从远程仓库gitLab上拉取指定分支到本地仓库
例如:将gitLab 上的dev分支拉取到本地 1>与远程仓库建立连接:git remote add origin XXXXX.git 2>使用git branch 查看本地是否具有dev ...
- 蓝桥杯T126(xjb&大数开方)
题目链接:http://lx.lanqiao.cn/problem.page?gpid=T126 题意:中文题诶- 思路:显然被翻转了奇数次的硬币为反面朝上,但是本题的数据量很大,所以O(n^2)枚举 ...
- nodejs ejs 引擎脱离express使用
之前用ejs都是使用express创建项目,然后在app.js中配置好的ejs直接使用即可,但是最近项目中使用的手工路由模式,脱离了express,不知道怎么用了,去扒ejs的网站,各种资料,也是懵懵 ...
- Uva11134
#include<bits/stdc++.h> #define inf 0x3f3f3f3f ; using namespace std; int n; struct rook{ int ...
- 机器学习框架ML.NET学习笔记【9】自动学习
一.概述 本篇我们首先通过回归算法实现一个葡萄酒品质预测的程序,然后通过AutoML的方法再重新实现,通过对比两种实现方式来学习AutoML的应用. 首先数据集来自于竞赛网站kaggle.com的UC ...