Javascript 如何从ng repeat更改文本框值

Javascript 如何从ng repeat更改文本框值,javascript,angularjs,Javascript,Angularjs,我在html中自动完成,我使用ng repeat来显示建议。代码如下: <div content-for="title"> <span>Add Friend</span> </div> <div class="scrollable"> <div class="scrollable-content"> <div class="list-group"> <div class="

我在
html
中自动完成,我使用
ng repeat
来显示建议。代码如下:

<div content-for="title">
    <span>Add Friend</span>
</div>
<div class="scrollable">
  <div class="scrollable-content">

    <div class="list-group">
      <div class="list-group-item">
          <form class="form-inline" role="form">
              <div class="form-group">
                  <label class="sr-only" for="exampleInputEmail2">Email</label>
                  <input type="text" class="form-control" data-ng-model="add.email" id="exampleInputEmail2" placeholder="Email" auto-complete autocomplete="off"/>
                  <div  href="#" ng-repeat="x in cobas | filter:add.email"> 
                    <div class="media-body" ng-if="add.email.length > 0">
                    <h5 class="list-group-item media">{{x.name}}
                    </div></div>
              </div>
              <button type="submit" class="btn btn-default" data-ng-click="addfriends()">Add</button>
          </form>
      </div>
    </div>
  </div>
</div>

加朋友
电子邮件
{{x.name}
添加

我想要的是,当我单击建议结果时,该
文本框的值将使用
ng click
更改为建议结果,有人能帮我吗?

您必须在控制器中添加函数,如下所示:

$scope.autocomplete = function (completeText) {
   $scope.add.email = completeText;
};
然后在html中调用ng上的函数,单击如下所示

<div  href="#" ng-repeat="x in cobas | filter:add.email" ng-click="autocomplete(x.name)"> 
     <div class="media-body" ng-if="add.email.length > 0">
           <h5 class="list-group-item media">{{x.name}}</h5
     </div>
</div>


{{x.name}它工作起来很有魅力,但是当textbox的值与建议值相同时,如何使建议不相似?您可以在ng repeat div上添加ng if,并在autocomplete()函数中将其值设置为false。然后,您必须在$scope.add.email上显示$watch,以便在您开始在文本框中键入时显示它。
$scope.autocomplete=function(completeText){$scope.add.email=completeText;$scope.isDisplayed=false;}
$scope.watch('add.email',function(){$scope.isDisplayed=true})