角度ngOptions切片或椭圆

时间:2015-06-25 08:34:52

标签: javascript angularjs slice

我在ngOptions中显示了一些非常长的句子,我在api中填充...我怎样才能将它们分开,所以我最终会得到类似(红色......或蓝色...)的点单词的结尾...,嗯,我可能应该尝试创建一个过滤器,我应该得到str的长度,然后根据我想要的字符数量来切片。非常感谢。

var MyFunction = function(){

   var _ = {
      Init: function(){

      },
      PrivateVariable: "foo bar"
   }

   return {
      Init: _.Init
   }

}();

2 个答案:

答案 0 :(得分:2)

yourApp.filter('short', function() { 
  // pass in collection, property to shorten and max length
  return function(values, property, length) {
    angular.forEach(values, function(value) { 
      value[property] = value[property].length <= length ? 
                        value[property] : 
                        value[property].substr(0, length) + '...';  
    });
    return values;
  };
});

<select ng-model="myColor" 
        ng-options="color.name for color in colors | short:'name':6">
</select>

此处相关的plunker http://plnkr.co/edit/Mvky0H

答案 1 :(得分:0)

您可以使用CSS样式text-overflow:ellipsis填充效果:http://www.w3schools.com/cssref/css3_pr_text-overflow.asp。只要限制选项包装元素的宽度。