js拼接的问题

ttdms
  • 153

如:

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

回复
阅读 1.3k
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的模板字符串,这样拼太麻烦了

宣传栏