0

フォームに表示される一連の質問があります。Firebase にプッシュできる配列にすべての回答を取得したいと考えています。

この質問 ( Angularjs は serialize に相当) はかなり似ています。ただし、質問ごとにIDがなく、その回答ではコントローラーコードが提供されません。

HTMLは次のとおりです。

 <form ng-submit="addAnswers()">
      <dd ng-repeat="questions in itemform.questions">
        {{questions}}
        <input type="text" ng-model = "answers">
      </dd>
      <input type="submit">
    </form>

コントローラーは次のとおりです。

phonecatControllers.controller('PhoneDetailCtrl', ['$scope', '$firebaseObject',function($scope, $firebaseObject) {

 $scope.addAnswers = function() {     
 var ans = new Firebase("https://APP.firebaseio.com/answers");
 var x = $scope.answers;
 console.log($element.serialize()); //says "element is not defined"
 console.log(x.serializeArray()); "says x is undefined

};

}]);
4

1 に答える 1

1

次のようにしてみてください。

 <form ng-submit="addAnswers()">
  <dd ng-repeat="questions in itemform.questions">
    {{questions}}
    <input type="text" ng-model = "answers[$index]">
  </dd>
  <input type="submit">
</form>

コントローラーで配列を初期化します。

$scope.answers = [];

ここに例があります http://codepen.io/mkl/pen/pyrPXB/

于 2016-03-30T00:46:17.580 に答える