Ich habe gerade angefangen AngularJS zu lernen. In einem Testprogramm, das ich geschrieben habe, muss ich prüfen, ob mein Eingabefeld leer ist oder nicht im Controller (Skript).Überprüfen, ob das Eingabefeld leer ist in Controller - AngularJS
Es folgt der Code, den ich
schrieb<div ng-controller="ExampleController">
<input type="text" ng-model="userFirstName" required/><br>
<p ng-bind="msg"></p>
</div>
<script>
var mainApp = angular.module("mainApp", []);
mainApp.controller('ExampleController', function ($scope) {
if($scope.userFirstName.length === 0){
$scope.msg = "pls enter something";
}else{
$scope.msg = "Something Entered";
}
});
</script>
Hier, wie der Ausgang, ich pls enter something
zu sehen erwartet. Aber ich kann nichts sehen.
Aber wenn ich das Skript zu ändern, um mit einigen kleinen Änderungen folgt, zeigt es mir Something Entered
wie erwartet.
<script>
var mainApp = angular.module("mainApp", []);
mainApp.controller('ExampleController', function ($scope) {
$scope.userFirstName = 'Something';
if($scope.userFirstName.length === 0){
$scope.msg = "pls enter something";
}else{
$scope.msg = "Something Entered";
}
});
</script>
Was ist hier falsch? Soweit ich verstehe, sollte der erste funktionieren, wenn der zweite wie erwartet funktioniert. Ansonsten sollten beide nicht funktionieren.
Ich denke, ich habe etwas sehr grundlegendes nicht verstanden. Wenn ja, beschreibe mich bitte, worüber ich nicht gelesen habe.
Vielen Dank ..!
funktioniert nur für 'etwas eingegeben'. Wenn das Textfeld deaktiviert ist, funktioniert es nicht wie erwartet – vigamage
@vigamage Ich aktualisierte meine Antwort Ich denke, dass Sie eine undefinierte oder Null-Überprüfung durchführen müssen. Mit freundlichen Grüßen –
ja, das ist es. Längenkontrolle ist nicht nötig, denke ich. – vigamage