【发布时间】:2015-12-23 18:42:06
【问题描述】:
这是我的代码:
<div ng-app="myApp" ng-controller="myCtrl">
Name: <input ng-model="myInput.name" />
age: <input ng-model="myInput.age" />
<pre>
{{myInput | json}}
</pre>
</div>
<script type="text/javascript">
angular.module('myApp', [])
.controller('myCtrl', function($scope) {
$scope.myInput = {};
});
</script>
默认情况下,空字符串未设置为 ng-model。
默认情况下,如何将 myInput 的所有值设置为 "" ?
这里是plnkr
更新:
假设有超过 100 个 myInput 字段。我必须手动将其设置为 ' ' 吗?
更新 2:
Pankaj Parkar 指令运行良好。但是当然,它将所有模型值设置为 ' ' 。仅当模型为空时如何将模型设置为空字符串?我检查了 attrs.value == undefined 但没有任何帮助。
【问题讨论】:
-
我猜你在控制器中拼错了
myINput...应该是$scope.myInput = {} -
在您的控制器中,您将
myINput设置为一个数组。在您的 HTML 中,您使用myInput作为对象。请修正你的拼写。它是数组还是对象? -
@Moid Mohd。抱歉,是我的错。请立即查看。
-
@georgeawg。它可以是对象或对象数组
-
使用
angular.forEach, docs.angularjs.org/api/ng/function/angular.forEach 将适用于数组和对象。
标签: javascript angularjs angularjs-scope angularjs-ng-model