在Angular中使用button清除输入,但同样的button也被用作ng-show的一部分

Clear input in Angular with button, but same button is also used as part of ng-show

本文关键字:button 一部分 ng-show Angular 清除 输入      更新时间:2023-09-26

首先,我可以想象这个问题的主题不是很清楚,所以很抱歉。我使用一个按钮与ng-click显示输入(ng-show)和其他两个按钮(发送,取消)。为了再次隐藏输入,我使用"取消"按钮。但是我也想清除输入的值。问题是,我不知道如何调用清除函数以及隐藏输入再次与相同的按钮。下面是我的代码:

    <button class="btn-share" ng-click="showme = !showme" clickng-class="{true: 'hideBtn', false: 'btn btn-xs btn-danger'}[showme]">
    show input.
    </button>
    <div class="form-group" ng-show="showme">
        <input id="myInput2" class="typeahead" sf-typeahead type="text" datasets="userDataset" ng-model="searchUser" >
        <button ng-click="showme=false" class="btn btn-xs">Cancel</button>
        <button ng-click="send()" class="btn btn-success btn-xs btn-sent">Send</button>
    </div>

    $scope.showme = false;

请更新您的代码

<button class="btn-share" ng-click="showme = !showme" clickng-class="{true: 'hideBtn', false: 'btn btn-xs btn-danger'}[showme]">

<button class="btn-share" ng-click="searchUser='';showme = !showme" clickng-class="{true: 'hideBtn', false: 'btn btn-xs btn-danger'}[showme]">

我在ng-click中添加了searchUser= "。所以,当用户点击它时,它会首先在作用域中更新searchUser为空字符串,然后在作用域中更新showMe。

如果你不想要取消后的信息,你可以用ng-click取消按钮。

这是你的活塞- http://plnkr.co/edit/X9wbGYsBoIXxR7QmE1zP?p=preview

如果将这一行添加到clear()函数中:

$scope.showme = false;

它将调用该函数并将showme变量设置为false,从而隐藏div!

那么你的clear函数可以像这样:

$scope.clear = function() {
    $scope.searchUser = "";
    $scope.showme = false;
}