gpt4 book ai didi

javascript - 使用 jquery 动态生成的 URL 部分重复

转载 作者:行者123 更新时间:2023-11-28 03:04:40 25 4
gpt4 key购买 nike

我正在尝试在查询中动态生成新闻项列表。该新闻是从 .json 文件中读取的,并相应地生成 html 代码。由于它是一个双语网站(IT-EN),我将所有页面(主页除外)分为两个子文件夹,分别称为 it 和 en。通过将插入的语言识别为页面标签中的 lang 属性,并添加 json 中的数字索引建议的“news #”,动态生成新闻页面的链接。当我转到新闻页面时,我使用 window.location.toString (). Split ('#')拆分 url,然后选择 # 后面的那个。我设法动态生成所有内容,并且可以正常工作 99%,但链接有重复的语言:而不是/en/news# Ø/it/news# ottengo /it/it/news# 。我省略了扩展名,因为它是由 .htaccess 自动插入的

我尝试通过直接编写所有内容来消除包含链接和语言的变量,但没有帮助。

function genera_elencoNews (objDati){   
let lingua = $('html')[0].lang.toLowerCase();
let articolo = objDati.articoli;
articolo = articolo.reverse();

let article = '';
let link_img = '';
let link = '';
let foto = '';
let data_articolo = '';
let titolo = '';
let contenuto = '';

for (let i = 0; i < Object.keys(objDati.articoli).length; i++){
article = $('<article>').attr('class', 'box excerpt');


link_img = $('<a>').attr('class', 'image left').attr('href', lingua + '/news#' + articolo[i].newsId);
link = $('<a>').attr('href', lingua + '/news#' + articolo[i].newsId);
foto = $('<img>').attr('class', 'Miniatura').attr('src', '/img/news/'+ articolo[i].foto);
data_articolo = $('<span>').attr('class', 'date').html(articolo[i].data);
titolo = articolo[i].titolo;
contenuto = $('<p>').html(articolo[i].contenuto.substring (0, 200) + '...');

$(article)//Genitore. tutto il resto è inserito dentro <article>
.prepend(link_img.append(foto))// Inserisce link e dentro mette la foto <article> --> <a> --><img>
.append($('<div>') //<article> --> <div>
.append($('<header>')// <article> --> <div> --> <header>
.append(data_articolo)//<article> ---> <div> ---><header> ---><span>DATA
.append($('<h3>')
.append(link.html(titolo))))
.append(contenuto))
.appendTo('#ultimeNews');
}
}

最佳答案

我设法解决了该问题,但我决定不删除该问题,以防它对其他人有用。

link = $('<a>').attr('href', lingua + '/news#' + articolo[i].newsId);

问题在于构建链接。它在家里工作,因为它位于根目录中,因此路径变成 example.com/it/news# 。在新闻存档页面上,由于它位于 example.com/it,生成的链接是 example.com/it/it/news# .

现在,解决后,我明白解决方案很简单但并不简单,特别是对于那些没有太多经验的人:从根开始链接的路径:而不是 it/news#使用/it/news#

然后我通过添加斜杠 (/) 修改了该代码行: link = $('<a>').attr('href', '/' + lingua + '/news#' + articolo[i].newsId);

关于javascript - 使用 jquery 动态生成的 URL 部分重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60710145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com