2017-01-02 10 views
0

私はドロップダウン選択から値を選択した後、角度jsでコールを入れようとしています。私はすでに選択から価値を得ています。ちょうどあまりにも電話をかけたいが、応答を出すことはできない。ここで

は、データセクションのデータダウン最後の一滴からでなければなりません

console.clear(); 

var app = angular.module("myApp", []); 

app.controller('sensorsCtrl', function($scope, $window, $timeout, $http{ 
    $scope.innerIsIsLoading = true; 

    $http.get('sample.json').success(function(resp) { 
     $scope.innerIsIsLoading = false; 
     $scope.assetData = resp; 
     $scope.Nameitems = []; 

     var testobj = $scope.assetData[0].name; 

     angular.forEach($scope.assetData, function(val, key) { 
      $scope.Nameitems.push({ 
       "name": val.name, 
       "uri": val.uri, 
       "sections": val.sections 
      }); 
     }); 
    }); 

    $scope.itemList= []; 
    $scope.sectionItem = []; 
    $scope.positionItem = []; 

    $scope.changedValue = function(item){ 
     $scope.itemList.push(item.sections); 
    } 

    $scope.sectionChangedValue = function(item){ 
     $scope.sectionItem.push(item.ultrasonicSensorPositions) 
    } 

    $scope.positionChangedValue = function(item){ 
     $scope.positionItem.push(item) 
    } 

    $scope.onclick= function(currentUlSensor){ 
     var req = { 
      method: 'PUT', 
      url: xyz, 
      headers: { 
       'Content-Type': 'application/json' 
      }, 
      data: $scope.positionItem; 
     } 

     $http(req).success(function (response) { 
      $scope.isLoading = false; 
      $scope.xyz= response; 
     }); 
    } 
}); 

が置かコールと要求データは、ここでこの

[ 
    { 
    "ultrasonicSensorPositionId": 18, 
    "sensorPositionName": "ultrasonic sensor position 1", 
    "diameter": 22.5, 
    "rotation": 90, 
    "sequenceNumber": 1, 
    "sectionId": "/assets/332008d3-fddc-391b-9cc1-6a41f7ff73d1" 
    }, 
    { 
    "ultrasonicSensorPositionId": 19, 
    "sensorPositionName": "ultrasonic sensor position 2”, 
    "diameter": 22.5, 
    "rotation": 90, 
    "sequenceNumber": 2, 
    "sectionId": "/assets/332008d3-fddc-391b-9cc1-6a41f7ff73d1" 
    } 
    ] 

のようである作るHTML

<!DOCTYPE html> 
<html ng-app="myApp"> 

    <head> 
     <script data-require="[email protected]" data-semver="1.5.6" src="https://code.angularjs.org/1.5.6/angular.js"></script> 
     <script data-require="[email protected]" data-semver="1.8.3" src="//cdnjs.cloudflare.com/ajax/libs/jquery/1.8.3/jquery.js"></script> 
     <link rel="stylesheet" href="style.css" /> 
     <script src="script.js"></script> 
    </head> 

    <body ng-controller="sensorsCtrl"> 
     <span class="sensors actionable u-mv" id="myid" ng-  click="addSequenceLink()"> 
      Add Sequence Link 
     </span> 
     <div ng-show="innerIsIsLoading" style="position: fixed; z-index: 999999; top: 450px; left: 65%"> 
      <px-spinner size="50"></px-spinner> 
     </div> 
     <div> 
      <select ng-model="asset1" id="assetNameGroup" ng-change="changedValue(asset1)" ng-options="x.name for x in Nameitems track by x.uri"> 
       <option>Select Name</option> 
      </select> 

      <select ng-model="asset2" id="assetNameGroup2" ng-change="sectionChangedValue(asset2)" ng-options="x.name for x in asset1.sections"> 
       <option value="">Select Name</option> 
      </select> 
      <select ng-model="asset3" id="assetNameGroup3" ng-change="positionChangedValue(asset3)" ng-options=" x.sensorPositionName for x in asset2.ultrasonicSensorPositions"> 
       <option value="">Select Name</option> 
      </select> 

      {{positionItem}} 
     </div> 
    </body> 
</html> 

Javascriptをplunkerですデモ 。

+0

サーバはPUTリクエストを処理する準備ができていますか? – ricky

+0

さて、 'data:$ scope.positionItem;'に ';'があり、 'onclick'が呼び出されていますか? – st2rseeker

+0

はい。 put要求を処理する準備はできましたが、最初にコンソールでデータを印刷するか、JSONファイルでローカルにリクエストしたいです – aaakanks

答えて

2

あなたのリクエストはOKと思われます。;data: $scope.positionItem;から削除してください。私は通常、以下を使用します: