2016-03-23 17 views
1

Ich habe eine MySQL Datenbank und Tabelle darin. Ich nehme Daten davon mit Node JS. Mein HTML-Code enthält die Eingangssuche und eine Tabelle mit Daten aus den Suchergebnissen. Ich benutze AngularJS für die Suche.AngularJS Suche funktioniert nicht

Das Problem ist, dass die Suche nicht funktioniert. Ich habe die ganze Tabelle anstatt einiger Ergebnisse.

Teil von HTML-Code:

<div class="search"> 
    <form action="" method="post" class="searchform" > 
    <input type="search" name="" placeholder="Поиск" class="inputsearchform" ng-model="search"/> 
    <input type="submit" name="" value="" class="submitsearchform" /> 
    </form> 
</div> 
<div class="songlist" ng-app='test_table' ng-controller='main_control'> 
    <table id="songlistTableR"> 
    <tr><th>Name</th><th>Link</th></tr>  
    <tr ng-repeat="data in loaded | filter:search"> 
     <td><i class="fa fa-plus"></i>{{data.song_name}}</td> 
     <td><a href="{{data.link}}" target='_blank'>Youtube</a></td>  
    </tr> 
    </table>  
</div> 

JS Skript:

var app = angular.module('test_table', []); 
app.controller('main_control',function($scope, $http){ 
    load(); 
    function load(){ 
     $http.get("http://localhost:7001/load").success(function(data){ 
      $scope.loaded=data; 
     }); 
    }  
}); 

Antwort

2

Alle Ihre Winkel HTML-Code müssen im ng-App-Attribut verschachtelt werden, so wird Ihr <div class="search"> nie von Angular analysiert einschließlich Ihrer ng-Modelldefinition. Sie sollten Ihren Code in etwas wie bearbeiten:

+0

Definitiv, so dumm für mich. Vielen Dank! –

+0

Natürlich werde ich akzeptieren, aber ich kann es nur in 2 Minuten tun. Kannst du helfen, wie zum Beispiel nur in der Spalte Song_name zu suchen? –

+1

@LevS so etwas wie 'ng-repeat = "Daten in geladenem | Filter: {song_name: search}" ' –