同时访问文本框并使用angularjs选择

时间:2017-02-13 07:17:22

标签: angularjs angularjs-directive

我想创建一个指令,当用户在文本区域中键入'@u'显示用户或'@c'displaying国家/地区时,我想根据关键字显示文本区域下方的选择选项并给出访问上下移动以选择选项。同时用户还需要能够在文本区域中键入文本。任何人都可以帮助我。

1 个答案:

答案 0 :(得分:0)

工作人员:

https://plnkr.co/edit/CCEqiupjdHyaF2MriJil?p=preview

    angular.module('testApp',[]).controller('testCtrl',['$scope',function($scope){
  $scope.users = ['user1','user2','user3'];
  $scope.country = ['IND','AUS','ENG'];
}]).directive('userCountry',function(){
    return{
      scope:{
        users : '=users',
        country:'=country'
      },
      restrict : 'EA',
      templateUrl:'userCountry.html',
      controller: ['$scope',function($scope){
        $scope.watchStart=false
        $scope.textareaChange = function(evt) {
          if(evt.key === "@"){
            $scope.watchStart = true;
            return;
          }
          if($scope.watchStart){
            if(evt.key === "u"){
              $scope.options=$scope.users;
            }else if(evt.key === "c"){
              $scope.options=$scope.country;
            }else{
              $scope.options=[];
            }
            $scope.watchStart = false;
          }
        }
      }]
    };
});

请通过plunkr。我排除了以下内容:

  • 以编程方式打开
  • 在textarea中选择字段值选择更改(我假设您要实现此目的) - 这可以通过利用其各自的模型来完成