js拼接的问题

如:

for (var j=0;j<data[i].children.length;j++) {
    navData += '<li>'
    + '<a href="'+data[i].children[j].name+'"><span class="menu-text">'+data[i].children[j].title+'</span></a>'
    + '</li>'
}
console.log('<a href="'+data[i].children[j].name+'"><span class="menu-text"></a>');
//输出为
<a href="Video/lst"><span class="menu-text"></a>

我当前的地址是http://domain.com/admin/,按照这写法,地址不是应该是http://domain.com/admin/Video...吗?为什么会变成http://domain.com/Video/lst

阅读 2.6k
4 个回答

推荐使用模版字符串

navData += `
    <li>
        <a herf="${data[i].children[j].name}">
            <span class="menu-text">${data[i].children[j].title}</span>
        </a>
    <li>
`

你把<a href="'+data[i].children[j].name+'">
改成<a href="./'+data[i].children[j].name+'">试试

那就改成相对路径,绝对路径默认是从根目录出发寻找的

一个是地址问题,还有推荐用es6的模板字符串,这样拼太麻烦了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题