0

名が見つかったときに JSON データを表示するリンクがあります。

 http://localhost:8080/application/names/find?firstname=f_name&LastName&Address&Status= 

例: f_name を Tim に置き換えると、次の JSON 応答が返されます。

 [{"f_name": "Tim","address": "Road","phone": "1234","status": "busy"}]

f_name を Sue に置き換えると、次の JSON 応答が得られます。

 [{"f_name": "Sue","address": "Street","phone": "4321", "status": "available"}]

Tim または Sue を入力して、対応するデータを取得できるようにしたいと考えています。これが私が持っているものです。

 $http.get('http://localhost:8080/application/names/find?firstname=f_name&LastName&Address&Status=').
  success(function(data) {
 $scope.jsonData = data;
 alert("Success");
}).
error(function(data) {
alert("Invalid URL");
});


 $scope.results = [];
 $scope.clickButton = function(enteredValue) {

    $scope.items = $scope.jsonData;

    angular.forEach($scope.items, function (item) {
        if(item.f_name === enteredValue){
            $scope.results.push({
                name: enteredValue,
                address: item.address,
                number: item.phone, 
                status: item.status
            });
        }
    })};

jsp

 <table>
        <tr>
            <td><label>Name:</label></td>
            <td>
    <input id="fName" type="text" data-ng-model="enteredValue" /> 
    <button data-ng-click='clickButton(enteredValue)'>Search</button>
            </td>
        </tr>
  </table>


 <table>
 <tr data-ng-repeat="result in results" >
 <td data-title="'ID'" >{{result.name}}</td>
 <td data-title="'Name'">{{result.status}}</td>
 <td data-title="'Status'">{{result.number}}</td>
 <td data-title="'Start Date'" >{{result.date}} </td>
 </tr>
 </table>

以下のように 使用て、ドロップダウンに正常に入力できました。

 $http.get('http://localhost:8080/application/countries').then(function(cdata) 
        {
$scope.countryData = cdata.data;

})

この検索を開始するにはどうすればよいですか? 私はこれを正しい方法でやっていますか?これにはサービスが必要ですか?

4

1 に答える 1