html 跳转页面传参、点击获取DOM参数

虽然现在前端框架已经很多,尤其是几大流行框架,比如Vue,React,Angular 等,已经去DOM化,但是还是有很多公司仍在使用 HTML + CSS + JS 。

这里记载一下用到的HTML传参 问题。

一、页面之间传参:

HTML 页面跳转可以直接通过,给 href 赋值

1       $(document).on('click', '.detail', function() {
2         window.location.href = 'scorePage.html'
3       })

? 传参

1       $(document).on('click', '.detail', function() {
2         window.location.href = `scorePage.html?id=${id}&name=${name}`;
3       })

在新页面获取参数:

1 let url = location.search;
2 console.log(url); // ?id=44&name=guozheng

获取的参数要转化成json格式:封装一个函数

 1 function getParams() {
 2   let obj = new Object();
 3 
 4   let url = location.search;
 5   if(url.indexOf('?') != -1) {
 6     let str = url.substr(1);
 7     let arrs = str.split('&');
 8     arrs.map(item => {
 9       obj[item.split('=')[0]] = item.split('=')[1]
10     })
11   }
12   return obj;
13 }

这里返回的 obj 就是包含所有 参数的 一个对象。

二、获取 DOM 自定义的 属性值。

HTML 结构:

1   <div class="box"></div>

js 代码:

这里模仿的是 后台获取数据 然后 拼接 DOM 结构,将数据已自定义属性的方式 绑定到 DOM上。

 1     let obj = {
 2       name: 'guozheng',
 3       id: 34,
 4       age: 27,
 5       sex: 'man'
 6     }
 7 
 8     let info = JSON.stringify(obj);
 9 
10     let str = `<div id="test" class="title-name" name='guo' data-info=${info}>法律价值度</div>`
11 
12     $('.box').append(str);
13 
14     $('#test').on('click', function() {
15       let info2 = $(this).attr('data-info');
16       console.log(JSON.parse(info2)); // {name: "guozheng", id: 34, age: 27, sex: "man"}
17     })
原文地址:https://www.cnblogs.com/xguoz/p/10174072.html