在JS的新页面上使用上一页的信息

时间:2019-05-31 01:15:49

标签: javascript dom dom-events

我是Java的新手,我需要帮助弄清楚这个过程,或者至少弄清楚要使用什么方法。我真的不需要一个完整的解决方案,只需一些建议即可。

我有一个包含链接列表的页面。当用户单击任何链接时,它们将被定向到相同的html页面(“ park.html”)。但是,该页面将根据用户单击的链接填充不同的信息。我将使用JSON和Javascript向信息“ parks.html”填充信息,但我只需要向“ park.html”提供某种类型的标识符即可,具体取决于点击哪个链接。

我不确定是使用事件侦听器,cookie还是可能使用React?我尝试为每个链接提供一个事件侦听器,该事件侦听器调用使用“ event.target.innerHTML”的函数来获取用户单击的链接的文本。我也尝试过在“ park.html”上加载该函数,但我不知道如何将信息从单击的链接传递到该函数调用。

这是我的代码,用于创建链接列表。从JSON文件中提取“条目”-列表创建正确。

function appendToList(entry, resultsList) {
    let listElement = document.createElement("li");
    let listLink = document.createElement("a");
    listLink.setAttribute("href", "park.html");
    listLink.setAttribute("id", entry.fullName);
    listLink.appendChild(document.createTextNode(entry.fullName));

    listLink.addEventListener("click", () => {
        qVal = listLink.id;
        console.log(qVal);
        get_park_data(qVal);
    });

    listElement.appendChild(listLink);
    resultsList.appendChild(listElement);
    return resultsList;
}

我认为侦听器调用的函数(get_park_data)正常运行,但是在列表所在的页面上运行-而不是列表元素链接到的页面。

那么,如何获得单击哪个链接的标识符以提供给被调用的页面?

我将不胜感激!谢谢!

1 个答案:

答案 0 :(得分:0)

为什么不在URL中使用查询参数?这要容易得多。您只需要将其附加到URL,就可以在用户每次单击链接时进行更改。