私はasp.net mvc 5とangularjsを使用してWebアプリケーションを開発しています。私はなぜNGショーが動作していないか、メッセージを表示していないのだろうと思っています。なぜng-showが正しく動作していないのですか?
angularjsコード:
vm.checkEmailFormat = function() {
var email = $(".pv-company-email").val();
var regex = /^[\w-]+(\.[\w-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)*?\.[a-z]{2,6}|(\d{1,3}\.){3}\d{1,3})(:\d{4})?$/i;
vm.validEmailFormat = (regex.test(email));
if (vm.validEmailFormat) {
vm.pageValidated = true;
} else {
vm.pageValidated = false;
}
}
ビューコード:
<div class="row">
<div class="col-md-3 settings-padding"><span class="textdescription"><strong>Email Address</strong></span></div>
<div class="col-md-6 settings-padding">
<input type="text" ng-model="vm.organisation.Email" ng-blur="vm.checkIsEmailBlank()" ng-keyup="vm.checkEmailFormat()" placeholder="Email" class="form-control comp pv-company-email" style="max-width:420px;" maxlength="250" />
</div>
<div class="col-md-3 settings-padding"><span class="error company-error" ng-show="!vm.validEmailFormat"><span class="company-border-top"><i class="fa fa-times-circle ngdialog-register-erroricon" aria-hidden="true"></i></span> Invalid email format.</span>
</div>
@*
<div class="col-md-3 settings-padding"><span class="error company-error" ng-show="vm.isEmailEmpty"><span class="company-border-top"><i class="fa fa-times-circle ngdialog-register-erroricon" aria-hidden="true"></i></span> Email is required.</span>
</div>
<div class="col-md-3 settings-padding"><span class="error company-error" ng-show="vm.validEmailLength"><span class="company-border-top"><i class="fa fa-times-circle ngdialog-register-erroricon" aria-hidden="true"></i></span> Must be 50 characters long only.</span>
</div>*@
</div>
あなたのコントローラでこれを行うことができます** var vm = this; ** – Raghav