如何在js中根据操作当前数据获取id值进行url链接跳转,前端页面操作数据的时候只显示最新发布的id值?

在js中根据操作当前数据获取id值进行url链接跳转,前端页面操作数据的时候只显示最新发布的id值,查看详情都是一样

img

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7667168
  • 除此之外, 这篇博客: js递归实现多层级数组内获取兄弟节点id中的 js递归实现多层级数组内获取兄弟节点id 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 最近做了一个需求
    列表内有多个层级
    要求可以实现每一级的列表项的上下移动
    需要在点击下移一层时
    将当前列表项平级向下移动一个位置
    移动这部操作是后端实现的

    前端需要在点击下移时获取当前项id和后面第一个兄弟节点的id
    以下操作实现获取兄弟节点的id

    直接上代码Demo:

    <button>点击</button>
    <script>
    
    let _btn = document.querySelector('button')
    
    
    const _list = [
        {id:'1',parentId: null,level:1,name: '1a'},
        {id:'2',parentId: null,level:1,name: '1b'},
        {id:'3',parentId: null,level:1,name: '1c',children: [
            {id:'01',parentId: '3',level:2,name: '2a'},
            {id:'02',parentId: '3',level:2,name: '2b',children:[
                {id:'001',parentId: '02',level:3,name: '3a'},
                {id:'002',parentId: '02',level:3,name: '3b'},
                {id:'003',parentId: '02',level:3,name: '3c'},
                {id:'004',parentId: '02',level:3,name: '3d'},
                {id:'005',parentId: '02',level:3,name: '3e'},
            ]},
            {id:'03',parentId: '3',level:2,name: '2c'},
            {id:'04',parentId: '3',level:2,name: '2d'},
        ]},
    ]
    
    
    var _id = '003'
    var nextId = null
    
    _btn.onclick = function () {
        
        
        var ParentId = getParentId(_list)
    
    }
    
    // 获取当前行信息
    function getParentId(list) {
        list.forEach((item,ind)=> {
            // console.log(item.id, _id)
            if (item.id === _id) {
                console.log('======获取当前行信息:',list ,item)
                // 处理当前列表
                getNextId(list, item)
            }
            if (item.children) {
                getParentId(item.children)
            }
            
        })
    }
    
    // 获取当前列表
    function getNextId (_list2,_item2) {
        _list2.forEach((item,ind)=> {
            if (item.id === _id) {
                console.log('当前index:',ind, ',当前id:', item.id)
                console.log('下级index:',ind+1, ',下级id:', _list2[ind+1].id)
            }
        })
    }
    
    
    </script>
    
  • 以下回答由chatgpt基于相关博客总结生成:

    根据问题要求,在JavaScript中需要编写一个函数来获取最新发布的id值,并将其用作URL链接进行页面跳转。下面是解决问题的步骤:

    1. 首先,需要在前端页面上获取到当前操作的数据。这可以根据具体的业务需求来实现,比如从表单中获取用户输入的数据、从后台接口获取数据等。

    2. 接下来,需要找到最新发布的id值。可以使用数组对象的过滤方法来筛选满足条件的数据。参考资料中给出了一个例子,可以将其作为参考。

    const arr = [
        { id: 10, name: '张三' },
        { id: 12, name: '李四' },
        { id: 3, name: '王五' },
        { id: 2, name: '赵六' },
        { id: 4, name: '孙七' }
    ]
    
    const newArr = arr.filter(item => item.id > 5);
    

    上述代码中,使用数组的filter方法对每个元素进行判断,如果满足条件(id大于5),则会被保留在新数组newArr中。

    1. 获取到最新发布的id值后,可以将其用作URL链接进行页面跳转。可以使用window.location.href来实现页面跳转。
    const latestId = newArr[newArr.length - 1].id;
    window.location.href = 'http://example.com?id=' + latestId;
    

    上述代码中,使用数组的length属性和下标来获取到最新发布的id,并将其拼接在URL中进行页面跳转。

    综上所述,根据当前操作的数据,获取最新发布的id并用作URL链接进行页面跳转的JavaScript函数可以如下所示:

    function goToLatestId() {
      // 获取当前操作的数据,具体实现根据业务需求而定
      const data = ...
    
      // 过滤出最新发布的id值
      const latestId = data.filter(item => item.id > 5)[0].id;
    
      // 页面跳转
      window.location.href = 'http://example.com?id=' + latestId;
    }
    

    请注意,上述代码中的部分内容需要根据具体业务情况来替换或修改,比如获取当前操作的数据和构建URL链接等。以上给出的代码仅供参考。

在 JavaScript 中,你可以根据当前操作的数据获取对应的 id 值,并使用该 id 值构建 URL 链接,然后通过 window.location.href 实现页面跳转。

假设你有一个包含数据的数组,每个数据对象都有一个唯一的 id 属性,你可以在前端页面操作数据时,获取最新发布的 id 值,并构建跳转链接。以下是一个示例代码:

<!DOCTYPE html>
<html>
<head>
    <title>数据操作示例</title>
</head>
<body>
    <!-- 假设数据数组 -->
    <ul id="data-list">
        <li data-id="1">数据1</li>
        <li data-id="2">数据2</li>
        <!-- ... 其他数据 ... -->
    </ul>

    <!-- 操作按钮,点击获取最新发布的 id 值并跳转 -->
    <button id="goto-latest">跳转到最新发布</button>

    <script>
        // 获取数据列表元素
        const dataList = document.getElementById('data-list');

        // 获取跳转按钮元素
        const gotoLatestBtn = document.getElementById('goto-latest');

        // 点击按钮时,获取最新发布的 id 值并构建跳转链接
        gotoLatestBtn.addEventListener('click', () => {
            // 获取数据列表中的所有数据项
            const dataItems = dataList.getElementsByTagName('li');
            
            // 默认最新发布的 id 为 -1
            let latestId = -1;

            // 遍历所有数据项,找到最新发布的 id
            for (const item of dataItems) {
                const id = Number(item.getAttribute('data-id'));
                if (id > latestId) {
                    latestId = id;
                }
            }

            // 构建跳转链接,替换 YOUR_BASE_URL 和 YOUR_ROUTE_PATH 为实际的基础 URL 和路由路径
            const baseURL = 'YOUR_BASE_URL';
            const routePath = 'YOUR_ROUTE_PATH';
            const url = `${baseURL}/${routePath}/${latestId}`;

            // 执行页面跳转
            window.location.href = url;
        });
    </script>
</body>
</html>

在上述示例中,通过点击 "跳转到最新发布" 按钮,会获取数据列表中最新发布的 id 值,并构建跳转链接。你需要将 YOUR_BASE_URLYOUR_ROUTE_PATH 替换为你实际项目中的基础 URL 和路由路径。

注意:以上示例是一种简单的实现方式,实际应用中可能需要根据你的数据结构和前端框架进行适当的调整。

var url = window.location.href; // 获取当前页面的url
var id = url.split("?")[1].split("=")[1]; // 分割出id值
参考  https://blog.csdn.net/code_mzh/article/details/105496065