2016-03-04 26 views
0

我想用angularJs实现一个自动完成的下拉式输入框。是的,在angular和jquery中都有很多解决方案。但问题是,他们似乎不必要的复杂,我所需要的。到目前为止,我拥有大部分由角度非常有限的代码开发的逻辑,缺少的是下拉式输入框体面的外观。我可以使用少量代码创建角度自动完成的下拉文本框吗?

我有这个简单的指令:

app.directive('autoCompleteBox', function() { 
    return { restrict: 'E', 
    templateUrl: '/pathTo/auto-complete-inputbox.html', 
    link:function(scope, element, attrs){ 
     scope.items=JSON.parse(attrs.items); 
    } 
}; 

});

而且模板是如下 - 只是一个非常简单的文本框和列表,当我在文本框中写的,我可以在角度使用非常简单的过滤器的代码通过它们进行过滤:

<div> 
    <input type='text' ng-model='test'> 
     <li ng-repeat='item in items | filter:test track by $index '> 
      {{item}}  
     </li> 
    </input> 
</div> 

而当我想要使用我使用的指令时:

<auto-complete-box items="[myArray]"> </auto-complete-box> 

这里是我得到的这个代码的结果的图像。

here

任何想法如何,我可以有一个简单而干净的可编辑的下拉盒(无箭头)加入这个代码的顶部,使其自动完成下拉框?

在此先感谢。

+0

可能帮助ühttps://github.com/angular/material/blob/master/src/components/autocomplete/js/autocompleteDirective.js –

+0

可能帮助ü的http:// stackoverflow.com/questions/35836719/suggetion-in-text-box-possible –

回答

0

您可以使用材料设计来实现自动完成和各种其他组件。材质设计组件对于AngularJs来说是一件好事。 希望这对你有帮助。 https://material.angularjs.org/latest/demo/autocomplete

+0

谢谢你的建议。我已经尝试过材质设计,但正如我所说的那样,它远远超过我所需要的,因此它有很长的功能代码,我不需要。 – zahra

+0

我不知道你的要求是什么,但md-autocomplete是很好的解决方案。 –

+0

您是否听说过Wijmo库,但已付款。 –

1

使用角度js ng-autocomplete模块来添加到下拉文本框的简单指令。

看到demo

+0

不是一个简单的。但仍比其他人清洁。谢谢 – zahra

相关问题