Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <form class="form-horizontal form-label-left" method="post" id="AddUserForm"
- data-ui-jq="parsley"
- data-parsley-remote
- data-parsley-priority-enabled="false"
- novalidate="novalidate">
- <fieldset>
- <legend>
- By default validation is started only after at least 3 characters have been input.
- </legend>
- <div class="form-group">
- <label class="control-label col-sm-3" for="basic">User Name</label>
- <div class="col-sm-9">
- <input type="text" name="userName" class="form-control" data-ng-model="user.userName" value=""
- data-parsley-remote
- data-parsley-remote-validator='checkusername'
- data-parsley-trigger="focusout"
- data-parsley-remote-message="User name is already registerd in the system"
- required="required" />
- <span class="help-block">
- Username must be unique
- </span>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-sm-3" for="email">
- E-mail
- </label>
- <div class="col-sm-9">
- <input type="email" id="email" name="email" class="form-control" data-ng-model="user.email"
- data-parsley-remote
- data-parsley-remote-validator='checkemail'
- data-parsley-trigger="focusout"
- data-parsley-remote-message="Email is already registerd in the system"
- required="required" />
- <span class="help-block">
- Email must be unique
- </span>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-sm-3" for="password">
- Password:
- </label>
- <div class="col-sm-9">
- <input type="password" id="password" name="password" class="form-control mb-sm" data-ng-model="user.password"
- data-parsley-trigger="change"
- data-parsley-minlength="6"
- required="required" />
- <input type="password" id="password-r" name="password-r" class="form-control" placeholder="Confrim Password" data-ng-model="user.confirmPassword"
- data-parsley-trigger="change"
- data-parsley-minlength="6"
- data-parsley-equalto="#password"
- required="required" />
- </div>
- </div>
- </fieldset>
- <div class="form-actions">
- <button type="submit" data-ng-click="AddNewUser($event)" class="btn btn-danger btn-rounded pull-right">Validate & Submit</button>
- <button type="button" class="btn btn-default btn-rounded">Cancel</button>
- </div>
- </form>
- window.ParsleyExtend = {
- asyncValidators: {
- checkusername: {
- fn: function (xhr) {
- console.log($('[name="userName"]'));
- return 404 === xhr.status;
- },
- url: authService.serviceBase + 'api/account/CheckUserName/' //+ $('[name="userName"]').text()
- },
- checkemail: {
- fn: function (xhr) {
- console.log($('[name="email"]'));
- return 404 === xhr.status;
- },
- url: authService.serviceBase + 'api/account/CheckEmail/'// + $('[name="email"]').text()
- }
- }
- };
- $scope.AddNewUser = function ($event) {
- $event.preventDefault();
- //THis resturns true allways when the remote validation is not valid,, but when other non remote valdiation happens is works fine
- $('#AddUserForm').parsley().validate();
- //and this if statement resturns true allways even when the remote validation is not valid,, but when other non remote valdiation happens is works fine
- if ($('#AddUserForm').parsley().isValid()) {
- authService.saveRegistration($scope.user).then(function (response) {
- $scope.savedSuccessfully = true;
- // $scope.message = "User has been registered successfully, you will be redicted to login page in 2 seconds.";
- //startTimer();
- },
- function (response) {
- var errors = [];
- for (var key in response.data.modelState) {
- for (var i = 0; i < response.data.modelState[key].length; i++) {
- errors.push(response.data.modelState[key][i]);
- }
- }
- $scope.message = "Failed to register user due to:" + errors.join(' ');
- });
- }
- };
- $('#AddUserForm').parsley().asyncValidate();
- if($('#AddUserForm').parsley().isValid() && $('#AddUserForm').parsley().isAsyncValid()) {
- ....}
- $(function() {
- var ok;
- $('#signup').parsley().on('field:validated', function() {
- ok = $('.parsley-error').length === 0;
- })
- .on('form:submit', function() {
- if (ok) return true;
- else return false;
- });
- });
- Parsley.addAsyncValidator('checkExists', function(xhr) {
- return false === xhr.responseJSON;
- }, '/data-management/verify-data?filter=signup');
Add Comment
Please, Sign In to add comment