1

タイトルのように..そのような操作が起こらないようにするにはどうすればよいですか? ここに公式サイトへのリンクがあります。例を参照してください。変数user.nameは最初の入力にバインドされuserName、入力が空の場合、オブジェクトuser.nameは削除されます。angularjsのこの機能を無効にするにはどうすればよいですか?

4

2 に答える 2

1

ng-model-options="{allowInvalid: true}"無効なエントリでもモデルを更新してみてください。

<input ng-model="user.name" required ng-model-options="{allowInvalid: true}">
于 2015-03-30T10:00:33.020 に答える
0

2つのオプションがあります

  1. 入力タグから削除するrequiredと、空の文字列をバックエンドに送り返すことができます

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


app.controller('MyCtrl', function($scope) {
  $scope.params = {
    user: "John"
  };
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="MyCtrl">
  <input name="userName" ng-model="params.user" />
  <hr/>
  <pre>{{params| json}}</pre>
</div>

  1. オプション 2 は、フォームをバックエンドに送信する前に検証します。

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


app.controller('MyCtrl', function($scope) {
  $scope.user = {
    name: "John"
  };
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>



<div ng-app="app" ng-controller="MyCtrl">
  <form name="someForm">
    <input name="userName" ng-model="user.name" required name="userName" />
    <span ng-show="someForm.userName.$error.required">User Name required</span>
    <br/>{{user | json}}
    <br/>

    <button type="submit" ng-disabled="someForm.$invalid">Submit</button>
  </form>
</div>

于 2015-03-30T09:21:17.480 に答える