2016-07-04 2 views
-1

Hier mein html table.i bereits die Tabelle mit Winkel js bindenin einer HTML-Tabelle suchen, verwendet die Winkel js

<body ng-app> 
    <div class="wrapper wrapper-content" ng-controller="InboxMailCtrl"> 
     <div class="input-group-btn"> 
      <button type="submit" ng-model="search" class="btn btn-sm btn-primary"> 
       Search 
      </button> 
     </div> 
     <table class="table table-hover table-mail"> 
      <tbody> 
       <tr ng-repeat="CU in InboxList"> 
        <td class="mail-ontact"><a href="" ng-click="ViewEmailDetails(CU.InboxMailID)">{{CU.Reciever}}</a></td> 
        <td class="mail-subject"><a href="" ng-click="ViewEmailDetails(CU.InboxMailID)">{{CU.Subject}}</a></td> 
       </tr> 
      </tbody> 

     </table> 
    </div> 

hier ist meine AngularJS code.i wollen Suchfunktion hinzufügen

var InboxDraftMailCtrl = function ($scope, $http) { 
    BindDraftMailList(); 

function BindDraftMailList(Data) { 
    debugger 
    var UserEmail = sessionStorage.getItem("loginUserID"); 
    var obj = { 
     data: UserEmail 
    } 
    debugger 
    $http({ 
     url: "MailRoute/getDataForDraftMail", 
     dataType: 'json', 
     method: 'POST', 
     data: obj, 
     headers: { 
      "Content-Type": "application/json" 
     } 
    }).success(function (response) { 

    }) 
      .error(function (error) { 
       alert(error); 
      }); 
} 

, was ich hinzufügen, die Suchfunktion

+1

Offensichtlich nicht eine einfache Web-Suche nach einfachen Begriffen wie "eckige Suche" oder hätte gefunden ** [filter docs] (https://docs.angularjs.org/api/ng/filter/filter) ** und viele andere Ergebnisse – charlietfl

Antwort

0

Sie können die Filtermethode von angularJS verwenden. Die Filtermethode wählt eine Teilmenge von Elementen aus dem Array aus und gibt sie als neues Array zurück. Schreiben Sie HTML-Code als.

<body ng-app> 
    <div class="wrapper wrapper-content" ng-controller="InboxMailCtrl"> 
    <div class="input-group-btn"> 
     <button type="submit" ng-model="search" class="btn btn-sm btn-primary"> 
      Search 
     </button> 
    </div> 
    <table class="table table-hover table-mail"> 
     <tbody> 
      <tr ng-repeat="CU in InboxList| filter:search"> 
       <td class="mail-ontact"><a href="" ng-click="ViewEmailDetails(CU.InboxMailID)">{{CU.Reciever}}</a></td> 
       <td class="mail-subject"><a href="" ng-click="ViewEmailDetails(CU.InboxMailID)">{{CU.Subject}}</a></td> 
      </tr> 
     </tbody> 

    </table> 

Dieser Link wird Ihnen bei der Lösung Ihres Problems helfen.

+0

Gibt keine Erklärung, warum Sie dies tun würden – charlietfl

+0

Ok. Ich werde es bereitstellen. eigentlich aktualisiere ich meine antwort. –

+0

Nun, zumindest verstehe ich die Frage ist, dass er eine Such-Taste verwenden möchte, um eine http.post Anforderung Server-Seite und holen Sie die E-Mails, die mit dem gesuchten Begriff übereinstimmen. Wenn ja, ist Ihre Antwort falsch. Andererseits hat er nicht gut erklärt, was er will. – developer033

0

zu erreichen, wenn Sie schauen, um filtern die bereits abgerufenen Ergebnisse, unter der Annahme, dass die Suchmethode ist/MailRoute/getDataForDraftMail, sind Sie auf der Suche, so etwas zu tun:

var InboxDraftMailCtrl = function ($scope, $http) { 

     $scope.Search = function(){ 
     $http({ 
     url: "MailRoute/getDataForDraftMail", 
     dataType: 'json', 
     method: 'POST', 
     data: obj, 
     headers: { 
     "Content-Type": "application/json" 
    }}).success(function (response) { 

     // Fetch what you want from response 
     $scope.InboxList = response.data.emails; // Something like this 
    })//. etc 
} 

Und in der HTML-Schaltfläche klicken sein sollte:

<button type="submit" ng-click="Search();" class="btn btn-sm btn-primary"> 
     Search 
</button>