用于在URL中连接的Javascript语法

时间:2018-05-01 01:47:50

标签: javascript syntax

我可以将orderB.id显示为表数据。我想在href中使用这个值,但我正在努力学习语法。

        var output = results.reduce(function (orderA, orderB){
            var row = "<tr>";
            row += "<td>" + orderB.name + "</td>";
            row += "<td>" + orderB.type + "</td>";
            row += "<td>" + orderB.id + "</td>";
            row += "<td><a href='/update/' + orderB.id + >Update</a></td>";
            return orderA + row;
        },"")

我试过了:

            row += "<td><a href='/update/' + orderB.id + >Update</a></td>";
            row += "<td><a href='/update/' + 'orderB.id' + >Update</a></td>";
            row += "<td><a href='/update/orderB.id' + >Update</a></td>";

这些输出:

  1. / update /
  2. /更新/
  3. /update/orderB.id
  4. 我想要例如:/ update / 3

2 个答案:

答案 0 :(得分:2)

使用template literals

row += `<td><a href="/update/${orderB.id}">Update</a></td>`;

或简单地用htmml字符串连接变量,如:

row += '<td><a href="/update/' + orderB.id + '">Update</a></td>';

答案 1 :(得分:0)

正如所建议的那样,模板文字是一种很好的方法,但是你必须要小心将字符串粘在一起以创建HTML - 如果有像<>这样的字符,或&可能存在问题。我会使用Lodash并修改另一张海报给出的答案:

row += `<td><a href="/update/${_.escape(orderB.id)}">Update</a></td>`;