在List.js中创建链接

时间:2017-03-28 01:37:07

标签: javascript list.js

我使用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一起加入以创建一个列表,通常我会做这样的事情(来自谷歌地图的例子我和#39 ;已使用)

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

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

1 个答案:

答案 0 :(得分: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,可以像任何其他属性一样使用。