如何检查AngularJS中的空字符串?

时间:2018-03-08 17:02:44

标签: javascript angularjs

我正在尝试检查表单中的字符串是否为空,如果答案为真则设置默认值,或者如果字符串不为空则传递实际值。
这是来自控制器的代码:

$scope.addElem = function () {
    $scope.lista2.push({
        com: null ? com = 'VUOTO' : com = $scope.newItem.com,
        gruppo: null ? gruppo = 'VUOTO' : gruppo = $scope.newItem.gruppo
    });
};  

以下是HTML中的代码(我也使用Bootstrap):

<form class="form-inline" name="input">
    <input type="text" class="form-control col-5" ng-model="newItem.com" placeholder="Nome del comico" ng-keypress="$event.keyCode == 13 && addElem()" />
    <input type="text" class="form-control col-5" ng-model="newItem.gruppo" placeholder="Gruppo del comico" ng-keypress="$event.keyCode == 13 && addElem()" />
    <button class="btn btn-outline-secondary btn-sm col-2" type="submit" ng-click="addElem()">Inserisci</button>
</form>

3 个答案:

答案 0 :(得分:2)

您的三元状况未正确构建。将其更改为类似下面的内容,它应该有效:

.\bootstrap.bat
.\b2 address-model=64 runtime-link=shared link=shared variant=release stage --stagedir=./stage/x64/Release --build-dir=build/x64/Release

答案 1 :(得分:0)

您似乎在尝试使用三元运算符来设置对象的属性。如果com返回真值,则下面的代码会将$scope.newItem.com设置为值,如果不是,则"VUOTO"的默认值。与gruppo相同。

$scope.lista2.push({
    com: $scope.newItem.com ? $scope.newItem.com : "VUOTO",
    gruppo: $scope.newItem.gruppo ? $scope.newItem.gruppo : "VUOTO",
});

答案 2 :(得分:0)

修剪数据字符串怎么样?

$scope.addElem = function () {
  $scope.lista2.push({
    com: $scope.newItem.com.trim().length === 0 ? com = 'VUOTO' : com = 
  $scope.newItem.com,
    gruppo: $scope.newItem.gruppo.trim().length === 0 ? gruppo = 
    'VUOTO' : gruppo = $scope.newItem.gruppo
  });
};