我正在尝试在查询中动态生成新闻项目列表。新闻从 .json 文件中读取,并相应地生成 html 代码。由于它是一个双语网站(IT-EN),我将所有页面(除了主页)分为两个子文件夹,分别称为 it 和 en。通过将插入的语言标识为页面标签中的 lang 属性,并在 json 中添加数字索引建议的“新闻#”,动态生成新闻页面的链接。当我转到新闻页面时,我使用window.location.toString (). Split ('#') 拆分 url,然后选择 # 之后的那个。我设法动态生成所有内容,它可以 99% 工作,但链接有重复的语言:而不是/en/news#o /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) + '...'); }}
1 回答
烙印99
TA贡献1829条经验 获得超13个赞
我设法解决了这个问题,但我决定不删除这个问题,以防它对其他人有用。
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);
添加回答
举报
0/150
提交
取消