检查json解析的项目字符串是否大于数字

时间:2017-07-12 16:40:49

标签: jquery json substr

我试图检查解析的json项是否大于17个字符,如果是,我需要显示省略号。

我的目标是下面的item.tli。正如您将看到的,我正在尝试创建一个链接。如果tli大于17个字符,我只想显示17个字符,然后显示后面的省略号。

这是javascript:

$.post('api/displayRecords.php', function(data)
{
  var table = $('#example1').DataTable();
  table.search('').draw();
  var obj = JSON.parse(data);
  obj.forEach(function(item)
  {
    if(item.tli == null){item.tli = '';}
    table.row.add([item.booking, item.quote, '<a href="#">'+item.tli+'</a>', item.name])
  });
  table.draw();
});

如上所示,如果item.tli为null,那么我就不会显示任何内容。

如果弄清楚如果tli大于17,那么我现在需要做什么,然后显示17和椭圆。

在PHP中,我可以这样做:

<td><a href='#'>".substr($row['tli'],0,17)."...</a></td>

但我现在需要在jquery中这样做。我只是不确定如何提供上面的第一个例子。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

试试这个:

$.post('api/displayRecords.php', function(data)
    {
      var table = $('#example1').DataTable();
      table.search('').draw();
      var obj = JSON.parse(data);
      obj.forEach(function(item)
      {
        if(item.tli == null){item.tli = '';}
        else { 
            if (item.tli.length > 17) { 
               item.tli = item.tli.substring(0, 17) + '...';
            } 
        }
        table.row.add([item.booking, item.quote, '<a href="#">'+item.tli+'</a>', item.name])
      });
      table.draw();
    });