【问题标题】:Creating Links in List.js在 List.js 中创建链接
【发布时间】:2017-08-20 21:59:18
【问题描述】:

我正在使用List.js 来生成列表(显然),但是我在创建列表项内的链接时遇到了问题。

这是我目前的代码 --

<script>

  var options = {
    valueNames: [ 'title', 'description', 'lat', 'lng', 'user_sub', 'location', 'imageurl'],
    item: '<li><h3 class="title"></h3><p class="description"></p><p class="location"></p><p class="user_sub"></p></li>'
  };

  var values = JSON.parse('{{ jsonout|safe }}');

  var userList = new List('users', options, values);

</script>

这创建了一个不错的列表,但是我想将 latlng ValueNames 加入到一起创建一个列表,通常我会做这样的事情(我使用过的谷歌地图示例)

'&lt;a href=http://www.google.com/maps/place/' + data.lat+ ',' + data.lng + '/@' + data.lat + ',' + data.lng +',6z target=_blank&gt;Get Directions&lt;/a&gt;'

但是,由于所有项目都是在 HTML 类部分中创建的,因此这是行不通的。关于如何使它工作的任何建议,或者它可能不是这个插件的选项?

【问题讨论】:

    标签: javascript list.js


    【解决方案1】:

    在将值绑定到 List.js 之前,尝试将 JSON 数据解析为您想要的格式

       var values = JSON.parse('{{ jsonout|safe }}');
        for(var i=0; i<values.length; i++) {
            var data= values[i];
            item.link = '<a href=http://www.google.com/maps/place/' + data.lat+ ',' + data.lng + '/@' + data.lat + ',' + data.lng +',6z target=_blank>Get Directions</a>'
        }
    

    您现在有了一个新属性link,可以像使用任何其他属性一样使用它。

    【讨论】:

    • 我没有专门使用您的答案,但它确实让我走上了正轨。我最终在后端从 Flask 添加了指向 JSON 的链接,然后将其发送到 JSON.parse('{{ jsonout|safe }}') 变量中。感谢您的帮助,不胜感激!
    猜你喜欢
    • 2015-06-09
    • 2014-03-12
    • 2013-01-25
    • 2015-11-03
    • 2013-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多