使用角度ng-click清除HTML输入的问题

时间:2015-06-16 19:38:06

标签: javascript angularjs angular-ngmodel html-input

我想知道为什么我似乎无法使用ng-click清除文本框输入。 Here is a plunker example我能够工作,但我在实际应用中遇到了不同的结果。在我的应用程序中,警报会触发但实际文本不会清除。关于什么可能影响这个的任何想法?传递其他依赖项($rootScopeplayerService)会导致我的应用中出现任何问题吗?

如果它有用,我可以提供更多代码。

.controller('HomeTabCtrl', function ($scope, $rootScope, playerService) {

$scope.yellText = "";
$scope.vote = playerService.voteForPlayer;

$scope.postToSlack = playerService.postToSlack;
$scope.postYellToSlack = playerService.postYellToSlack;
$scope.clearYellText = function() {
  $scope.yellText = "";
  alert("cleared");
}

})


<div class="list list-inset">
    <label class="item item-input">
        <input type="text" placeholder="Type Some Words!" ng-model="yellText" autocomplete="off">
    </label>
</div>
<button class="button button-full button-positive" ng-click="postYellToSlack(selectedPlayer, yellText); clearYellText();">
    Enter text to earn points
</button>

非常感谢你的时间。如果我不清楚或者您是否需要我提供任何其他信息,请告诉我。

2 个答案:

答案 0 :(得分:0)

在此处https://docs.angularjs.org/api/ng/type/ngModel.NgModelController

所述的ngModel上使用$ setViewValue

所以,在你的情况下

$scope.yellText.$setViewValue('');

请参阅:https://jsfiddle.net/totLccob/8/

答案 1 :(得分:0)

证明了我真正需要的是:

this.yellText = "";

而不是:

$scope.yellText = "";