在搜索过滤器中使用ng-model

时间:2016-09-07 10:55:34

标签: angularjs json

我在表格中有一个搜索过滤器,我给它选择了ng-model名称作为selectedGcode。我正在调用ng-click = viewAccount()以便在单击时调用该函数。但我在我的控制器中获取$ scope.selectedGcode为undefined。

HTML:

<table class="table table-striped">
<thead>
<tr class="myheading">
  <th class="col-sm-2"> Code
  </th>
  <th class="col-sm-2">Name
 </th>
 </tr>

  <tr>
   <th class="col-sm-2" >
<input type="text"  class="form-control" ng-model="selectedGcode" placeholder="Search" ng-click="viewAccount()" /></th>
 <th class="col-sm-2" >
<input type="text"  class="form-control"  /></th>
 <tr>

 <tbody>
<tr data-ng-repeat="data in tableData">
        <td  class ="stylethecontent" >{{ data.groupzcode}}</td>
        <td  class ="stylethecontent" >{{data.groupzname}}</td>
</tr>
</tbody>
</table>

JS:

 $scope.viewAccount = function(){

   var json = {

  "json": {
    "request": {
      "servicetype": "6",
      "functiontype": "6014",
      "session_id": $rootScope.currentSession,
           "data": {
        "shortname": $scope.selectShortName,
        "groupzcode":$scope.selectedGcode

       }
    }
  }
};

UserService.viewListAccount(json).then(function(response) {

              console.log(json);

             if (response.json.response.statuscode == 0 && response.json.response.statusmessage == 'Success')

               $scope.tableData = response.json.response.data;



        }); 
    };

3 个答案:

答案 0 :(得分:0)

你应该使用“ng-model”或“data-ng-model”,而不仅仅是“model =”selectedGcode“” 你可以使用ngKeyup而不是ngClick。因为只有当用户点击输入表单时才会触发ngClick,而不会在用户写入内容时触发。

答案 1 :(得分:0)

使用&#39; ng-model&#39;而不是&#39; model&#39; org.eclipse.wst.common.project.facet.core.xml中的关键字来获取控制器中的值。

答案 2 :(得分:0)

如果您想在每次输入内容时触发viewAccount(),您应该使用ng-change

<input type="text"  class="form-control" ng-model="selectedGcode" placeholder="Search" ng-change="viewAccount()" /></th>

如果您想在点击时专门触发viewAccount(),则应使用按钮。

<input type="text"  class="form-control" ng-model="selectedGcode" placeholder="Search"/></th>
<button type="button" class="btn btn-default" ng-click="viewAccount()"></button>