Angularjs 如何在单击时清除输入字段?

Angularjs 如何在单击时清除输入字段?,angularjs,ionic-framework,Angularjs,Ionic Framework,我已经做了很多来修复这个问题,但它不起作用。我正在使用爱奥尼亚的搜索栏。 我的输入字段在未填充任何内容时获取类ng empty(因此这是默认状态)。输入字段在填充时会得到一个ng not empty类 所以,我可以用jQuery或其他什么东西来解决这个问题,但是我发现Angular有办法做到这一点。这是HTML: <ion-view view-title="Testing"> <ion-header-bar align-title="center" class="

我已经做了很多来修复这个问题,但它不起作用。我正在使用爱奥尼亚的搜索栏。 我的输入字段在未填充任何内容时获取类
ng empty
(因此这是默认状态)。输入字段在填充时会得到一个
ng not empty

所以,我可以用
jQuery
或其他什么东西来解决这个问题,但是我发现
Angular
有办法做到这一点。这是HTML:

 <ion-view view-title="Testing">

     <ion-header-bar align-title="center" class="bar">
      </ion-header-bar>

         <ion-content class="scrollBar">

            <ion-searchbar class="searchBar" ng-app="myApp">
               <label>
                 <input class="searchField" type="search" ng-model="itemsSearch"/>
                  <a class="clear" data-ng-click="saveParentComment()">X</a>
                  <i class="icon ion-search placeholder-icon"></i>
              </label>
           </ion-searchbar>

      </ion-content>
  </ion-view>
然而,这是行不通的,我不明白为什么。我做错什么了吗?如果是,我如何修复它?我已经看到了很多关于这个问题的问题,但是没有一个答案对我有效。我在控制台中也没有看到任何错误


我看到的唯一一件事是,当我单击锚时,它会被一个新类“激活”。

我看不到您在视图中的任何地方放置了
而且ng模型应该使用
点操作符

试试看


我看不到您在视图中的任何地方放置了
SearchController
而且ng模型应该与
操作符一起工作

试试看


在angular中,每个指令都创建新的作用域。
itemsSearch
绑定到指令作用域,且其对控制器不可见

    myApp.controller('SearchController', function ($http, $scope, $state) {

    $scope.objItem = {itemsSearch : ""};

     $scope.saveParentComment = function () {
          $scope.objItem.itemsSearch = "";
      };
将其用作控制器中
$scope
上定义的对象的一部分

    myApp.controller('SearchController', function ($http, $scope, $state) {

    $scope.objItem = {itemsSearch : ""};

     $scope.saveParentComment = function () {
          $scope.objItem.itemsSearch = "";
      };
HTML:

<input class="searchField" type="search" ng-model="objItem.itemsSearch"/>

在angular中,每个指令都会创建新的作用域。
itemsSearch
绑定到指令作用域,且其对控制器不可见

    myApp.controller('SearchController', function ($http, $scope, $state) {

    $scope.objItem = {itemsSearch : ""};

     $scope.saveParentComment = function () {
          $scope.objItem.itemsSearch = "";
      };
将其用作控制器中
$scope
上定义的对象的一部分

    myApp.controller('SearchController', function ($http, $scope, $state) {

    $scope.objItem = {itemsSearch : ""};

     $scope.saveParentComment = function () {
          $scope.objItem.itemsSearch = "";
      };
HTML:

<input class="searchField" type="search" ng-model="objItem.itemsSearch"/>

试试这个:-

 <input type="text" class="form-control" data-ng-model="searchAll"></input> 
        <a class="clear" href="" data-ng-click="clearSearch()">X</a>

 app.controller("SearchController", function ($scope) {
    $scope.searchAll = "";

    $scope.clearSearch = function () {
        $scope.searchAll = "";
    };
});

应用程序控制器(“搜索控制器”,功能($scope){
$scope.searchAll=“”;
$scope.clearSearch=函数(){
$scope.searchAll=“”;
};
});
试试这个:-

 <input type="text" class="form-control" data-ng-model="searchAll"></input> 
        <a class="clear" href="" data-ng-click="clearSearch()">X</a>

 app.controller("SearchController", function ($scope) {
    $scope.searchAll = "";

    $scope.clearSearch = function () {
        $scope.searchAll = "";
    };
});

应用程序控制器(“搜索控制器”,功能($scope){
$scope.searchAll=“”;
$scope.clearSearch=函数(){
$scope.searchAll=“”;
};
});

您能确保将
搜索控制器
放在, 你能试试这个吗

<ion-view view-title="Testing"  ng-app="myApp" ng-controller="SearchController">
 <ion-header-bar align-title="center" class="bar">
  </ion-header-bar>
     <ion-content class="scrollBar">
        <ion-searchbar class="searchBar">
           <label>
             <input class="searchField" type="search" ng-model="itemsSearch"/>
              <a class="clear" data-ng-click="saveParentComment()">X</a>
              <i class="icon ion-search placeholder-icon"></i>
          </label>
       </ion-searchbar>
  </ion-content>
如果您在控制台日志中看到clear,则可以确定您的功能工作正常。您还可以在控制器中为itemSearch设置初始值。
$scope.itemsSearch=“在此处搜索”

请确保您将
搜索控制器
,, 你能试试这个吗

<ion-view view-title="Testing"  ng-app="myApp" ng-controller="SearchController">
 <ion-header-bar align-title="center" class="bar">
  </ion-header-bar>
     <ion-content class="scrollBar">
        <ion-searchbar class="searchBar">
           <label>
             <input class="searchField" type="search" ng-model="itemsSearch"/>
              <a class="clear" data-ng-click="saveParentComment()">X</a>
              <i class="icon ion-search placeholder-icon"></i>
          </label>
       </ion-searchbar>
  </ion-content>
如果您在控制台日志中看到clear,则可以确定您的功能工作正常。您还可以在控制器中为itemSearch设置初始值。
$scope.itemsSearch=“在此处搜索”

我认为您的控制器有问题。在控制台中首次尝试功能是否正常

$scope.saveParentComment = function () {
          console.log("working");
      };

我想你的控制器有问题。在控制台中首次尝试功能是否正常

$scope.saveParentComment = function () {
          console.log("working");
      };


将控制器和整个viewHi张贴在那里。我已经为您编辑了这个问题。为什么在<代码>离子视图< /代码>的中间有一个<代码> NG APP>代码>指令?我很惊讶没有关于这个的错误消息。把你的控制器和整个视图都贴在那里。我已经为您编辑了这个问题。为什么在<代码>离子视图< /代码>的中间有一个<代码> NG APP>代码>指令?我很惊讶没有关于这个的错误消息。Console没有给我错误。它没有清除它,甚至破坏了我的搜索功能。控制台没有给我任何错误。它没有清除它,甚至破坏了我的搜索功能。也不起作用。对象似乎破坏了我的搜索功能你说的搜索功能是什么意思?好吧,当我键入某个东西时(比如字母K),它会给我所有带有K的项目。在你的解决方案中,这也不起作用。可能你做错了什么,你能创建一个plunker吗?让我们来看看。它也不起作用。Object似乎破坏了我的搜索功能。你说的搜索功能是什么意思?嗯,当我键入某个东西(比如字母K)时,它给了我所有带有K的项目。在你的解决方案中,这也不起作用。可能你做错了什么,你能创建一个plunker吗?让我们看看。好吧,我在我的控制台中看不到这一点。我添加了searchController,但它不起作用。我不明白为什么,在我的控制台上我看不到。我添加了searchController,但它不起作用。我不明白为什么。也许我做错了什么。我会支持你的答案。也许我做错了什么。我将投票赞成你的答案。