2016-03-17 5 views
0

Немного тривиального здесь, однако, новичок в Angular, поэтому извините меня.Angular - Проверка наличия поля

Всякий раз, когда у меня есть поле ввода - мне нужно только, чтобы действие произошло, если поле действительно содержит какое-то допустимое содержимое.

Что я нахожу, мне нужно сначала создать экземпляр переменной, а затем назначить ее любому входному сигналу, затем выполнить булевскую проверку в if.

Правильный способ обойти это? Если я не экземпляр переменной (или не использовать один на всех) я бегу на получение undefined ошибку:

var textToSearch = ''; 
textToSearch = $scope.main.searchInputField.trim(); 

if (textToSearch){ 
     $location.path('/search/'+textToSearch); 
} 

Также (на другой ноте) Я дезинфицирующим все на стороне сервера, однако на Угловая/клиентская сторона - это быстрая и простая функция, которую я могу использовать?

Благодаря

+0

это поле формы? – user2881430

+0

Его поле userMod2

+0

вы можете использовать цикл for, чтобы проверять каждое поле ввода и проверять, имеет ли значение вход 'ng-model' значение – user2881430

ответ

0

Я полагаю, у вас есть нг-модель «main.searchInputField», так что если вы хотите проверить, если поле пустое, вы можете просто написать

$scope.main = {}; 
if($scope.main.searchInputField.trim().length > 0){ 
//do stuff 
} 
0

Предположим, у вас есть ng-model из поле ввода 1 в качестве some.data и поле ввода 2, как some.data1

for(var i=0; i<$scope.some.length;i++){ 
    if($scope.some[i]){ 
     //do something 
    } 
} 

она будет проверять каждое поле.

0

Это использование Bootstrap для проверки подлинности электронной почты, но та же логика применяется, если вы используете свои собственные классы.

<div ng-class="(emailRegExp.test(email) && email != null) ? 'has-success' : 'has-error'" class="form-group has-feedback"> 
    <div class="input-group"> 
    <div class="input-group-addon"> 
     <span class="glyphicon glyphicon-envelope"></span> 
    </div> 
    <input ng-model="email" ng-change="checkEnableSubmit()" id="email" placeholder="Email Address" type="text" class="form-control" aria-describedby="emailStatus"> 
    </div> 
    <span ng-class="(emailRegExp.test(email) && email != null) ? 'glyphicon-ok' : 'glyphicon-remove'" class="glyphicon form-control-feedback" aria-hidden="true"></span> 
</div> 

директива нг-класс выполняет проверку, если:

  1. Функция checkEnableSubmit() в контроллере позволяет только представление, когда данные достоверны (я был бы счастлив включить этот код, тоже)
  2. Оба класса в тройном оператора на линии № 1, показывают действительные данные и недействительные данные (в данном примере один делает вход появляется зеленый, а другой красный)
Смежные вопросы