【发布时间】:2016-05-26 06:54:05
【问题描述】:
我有一个表单,其中所有输入都被清除为“ng-model = 'input.text'”之类的模型。一切正常,但我需要的是,只要值现在为 null,键值对就应该像 {} 而不是 {'text':"" } 一样消失。如果需要模型,这可以实现,但我想知道不使用 required 是否可以实现。
代码是:
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<link rel="stylesheet" type="text/css" href="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
</head>
<body ng-controller="myCtrl">
<input type="text" ng-model="input.text">
<input type="number" ng-model="input.number">
<p>{{ input }}</p>
<script type="text/javascript">
app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $timeout){
$scope.input = {};
});
</script>
</body>
</html>
笨蛋是:http://plnkr.co/edit/u483ay8OZCIo9E32ssVU?p=preview
附言
输入的JSON值会通过HTTP作为JSON对象传递给服务器
【问题讨论】:
-
试试这个
if(input.name == "") delete input["name"]; -
条件句放在哪里?
标签: javascript angularjs