【问题标题】:How to load dynamically a new page from dynamically loaded html?如何从动态加载的html动态加载新页面?
【发布时间】:2021-01-07 01:28:50
【问题描述】:

我目前有一个问题,我的网页有一个图片页面,该页面动态上传用户可以上传的图片。每张图片卡都有一个按钮,单击该按钮可以显示一个包含有关该特定图片的 cmets 的新页面。评论和图片信息都以数组的形式存储在服务器上。我不确定如何在不将新 HTML 页面编码为单页应用程序的情况下使每张图片卡上的按钮生成新页面。另外,我将如何将图片标题的值传递到新页面,以便我可以过滤 cmets 以仅包含有关特定图片的内容?我已经有返回所有图片和 cmets 的 get 和 post 请求从服务器。 server.js

function loadpics() {
    document.getElementById('insertpics').innerHTML='' 
    fetch ('http://127.0.0.1:8090/pics',{
        method: 'GET',
        headers: {
            "Content-Type":"application/json"
        }
     })
    .then((res) => { return res.json(); })
    .then(pics => {
        for (let pic of pics){
            const y= `
            <div class="card" style="width: 18rem;">
            <img class="card-img-top" src=${pic.picurl} alt="Card image cap">
            <div class="card-body">
              <h5 class="card-title">${pic.username}</h5>
              <p class="card-text">${pic.nameofpic}</p>
            <a  class="btn btn-info" href="#" >View Comments on this picture</a>
            </div>
          </div>
            `;

            document.getElementById('insertpics').innerHTML+=y;
        }
    })
};
loadpics();


如您所见,我在卡片末尾有一个按钮,但不知道如何使它生成一个空白页,其中只有与该照片链接的 cmets。图片数组具有这种结构 [{"username":"username","picname":"nameofpic","pic":"pic.png"}] 并且评论数组具有这种结构 [{"username":"username ","picname":"nameofpic","comment":"comment"}]。任何帮助将不胜感激 !编辑:请有人帮忙。

【问题讨论】:

    标签: javascript node.js ajax fetch client-server


    【解决方案1】:

    创建一个仅包含单个 pic 和 cmets 的新页面。 在“a”标签中添加网址。例如http://127.0.0.1:8090/viewPic/{id}

    【讨论】:

    • 你有什么办法可以解释我将如何去做或提供更多细节吗?对不起,我对 js 和服务器很陌生
    • 如何在创建页面的同时确保我拥有单页应用程序样式以及如何使用 fetch 使用特定的 cmets 填充页面?
    • 以上回答不适用于单页应用。对于 SPA,使用 JavaScript 和 CSS 来更改卡片的样式。例如:你可以有一个“活动”的 CSS 类,它改变卡片的 CSS 属性以覆盖意志屏幕等,然后在 js 的帮助下添加和删除所选元素上的 CSS 类。
    • 您是否有机会向我展示按下按钮时如何加载此 css 和 js 的示例?对不起,我还是很困惑。
    猜你喜欢
    • 2021-07-19
    • 1970-01-01
    • 2017-05-06
    • 2017-10-29
    • 1970-01-01
    • 2013-10-10
    • 2022-12-21
    • 2015-08-29
    • 1970-01-01
    相关资源
    最近更新 更多