【问题标题】:Trying to pass array parameters to create dynamic URLs尝试传递数组参数以创建动态 URL
【发布时间】:2019-01-14 23:50:38
【问题描述】:

我正在尝试向我的表格中添加一列,其中有一个鼠标悬停图标,并显示它链接到的记录页面的预览缩略图。

到目前为止,我在鼠标悬停时看到了缩略图以及其他字段。不幸的是,我只能使它与静态 URL 一起工作。 一旦我尝试向 URL 添加一个变量,我的整个表格就不再显示了。

这是现在的代码,其中包含静态 URL。

function makeArray(arr) {
var array = [];
for(var i = 0; i < arr.length; i++){
    var row = { date:'', view:'', name:'', comment:'', createdAt:'', updatedAt:'',reportId:''};

    row.date = new Date(arr[i].date).toLocaleDateString();
    row.view = '<a class="tiptext">view<iframe class="description" src="http://myurl.com/report.html?62"></iframe></a>';
    row.name = arr[i].name;
    row.comment = arr[i].comment;
    row.createdAt = arr[i][36];
    row.updatedAt = arr[i].updatedAt;
    row.reportId = arr[i].reportId;
    array.push(row);
}
showDataTable(array);

我想要做的不是让它链接到(在这种情况下)记录 62,而是使用每条记录的 reportId 并将其插入 URL 而不是 62。

我现在已经尝试了很多解决方案,但我似乎无法找到它。 大家有什么办法解决这个问题吗?

谢谢

【问题讨论】:

    标签: javascript variables url dynamic-url


    【解决方案1】:

    请试试这个:

     row.view = `<a class="tiptext">view<iframe class="description" src="myurl.com/report.html?${arr[i].reportId}"></iframe></a>`; 
    

    【讨论】:

    • 现在它向我显示了页面预览,但没有任何值......关于我如何解决这个问题的任何想法?我猜它没有调用必要的函数
    • 好像显示myurl.com/report.html?所以它不会传递任何值
    • 如果它只显示“myurl.com/report.html?” row.reportId 可能不包含任何值。你能调试一下 row.reportId 对每一行都有一个值吗?
    • 它确实有一个值,如果我显示 row.reportId = arr[i].reportId;它向我显示了每一行的正确 ID,将它传递到该 URL 似乎是一个问题
    • 请将上面一行中的 row.reportId 替换为 arr[i].reportId。像这样:row.view = &lt;a class="tiptext"&gt;view&lt;iframe class="description" src="myurl.com/report.html?${arr[i].reportId}"&gt;&lt;/iframe&gt;&lt;/a&gt;;
    猜你喜欢
    • 2017-01-15
    • 2017-09-04
    • 1970-01-01
    • 2023-03-06
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-09
    相关资源
    最近更新 更多