6

AngularJS (v1.1.3) で送信した後、フォーム フィールドをリセットできません。これが私がやろうとしていることのスニペットです:

HTML

<form name="addMemberForm">
    <input name="name" type="text" placeholder="Jon Doe" ng-model="member.name" required/></td>
    <a class="btn btn-primary" ng-click="createMember(member)" ng-disabled="addMemberForm.$invalid"><i class="icon-plus"></i></a>
</form>

JS

$scope.createMember = function(member) {
    var membersService = new Members(member);
    membersService.$create(function(member) {
        $scope.members.push(member);
        $scope.addMemberForm.reset(); //TypeError: Object #<FormController> has no method 'reset'
    });
};

フォーム要素をリセットする別の方法はありますか?

4

2 に答える 2

5

@tschielaのコメントのおかげでそれを理解しました。私はこれをしなければなりませんでした:

$scope.createMember = function(member) {
    var membersService = new Members(member);
    membersService.$create(function(member) {
        $scope.members.push(member);
        $scope.member = '';
    });
};
于 2013-04-20T20:41:47.643 に答える
3

form のデフォルト値を取得するだけです。

HTMLフォーム

<form novalidate id="paperForm"  class="form-horizontal" name="formPaper">
<div class="form-group">
<label class="col-sm-3 control-label" for="name">
    Name
</label>
<div class="col-sm-8">
    <input type="text" id="name" placeholder="Please Enter Name"  class="form-control" ng-model="paper.name" ng-name="name" required>
</div>

<label class="col-sm-3 control-label" for="name">
    Department
</label>
<div class="col-sm-8">
    <input type="text" id="department" placeholder="Please Enter Department"  class="form-control" ng-model="paper.department" ng-name="department" required>
</div>

</div>

 <button type="button" class="btn btn-default" ng-click="reset(paper)">Reset</button>

</form>

コントローラー内にリセットコードを設定する

var deafualtForm = {
name : '',
department : ''
}

$scope.reset= function(paper) {
$scope.paper = angular.copy(deafualtForm);
}
于 2014-10-10T06:38:47.257 に答える