首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >欧芹验证不工作角js

欧芹验证不工作角js
EN

Stack Overflow用户
提问于 2013-11-12 16:12:53
回答 3查看 5.9K关注 0票数 5

我使用的是带有角度js的精确验证,但是它不起作用,我做错了什么,任何一个人都可以纠正或检测我代码中的错误。如果我正在服从,所以它不工作,没有向我显示任何错误的间接显示,根据他们的属性。我还添加了简洁的库,并且没有得到任何与它相关的错误,所以问题出在哪里。

LoginView.html

代码语言:javascript
复制
<form class="form-horizontal" ng-submit='login()' data-validate="parsley">
                <div class="modal-header">
                    <h3>Login</h3>
                </div>

                <div class="modal-body">
                    <div class="form-group">
                        <label for="login-Name" class="col-lg-3 form-label">User Name:</label>
                        <div class="col-lg-8">
                            <input type="text" class="form-control" id="login-Name" ng-model="LoginName" name="login-Name" placeholder="User Name" data-type="alphanum" data-required="true" />
                        </div>
                    </div>

                    <div class="form-group">
                        <label for="login-Password" class="col-lg-3 form-label">Password:</label>
                        <div class="col-lg-8">
                            <input type="password" class="form-control" id="login-Password" ng-model="LoginPass" name="login-Password" placeholder="Password" data-type="alphanum" data-required="true" data-minlength="6" data-minlength="6" data-maxlength="20"/>
                        </div>
                    </div>
                </div>


                <div class="modal-footer">
                    <button type="submit" class="btn btn-primary">
                        <i class="icon-user icon-white"></i> Login
                    </button>
                </div>

            </form>

loginController.js

代码语言:javascript
复制
$scope.login = function() {

          var user = {
              "username" : $scope.LoginName,
              "password" : $scope.LoginPass
          }
      };
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-02-05 03:25:53

我做了一些工作,玩了一些东西,但最后我创建了一个名为parsleyValidateInput的指令。把它放在你想要用欧芹验证的每一个输入上。

咖啡脚本:

代码语言:javascript
复制
angular.module('app').directive 'parsleyValidateInput', ($timeout) ->
  link: (scope, element, attrs) ->
    element.on 'remove', ->
      element.closest('form').parsley('removeItem', "##{attrs.id}")

    $timeout ->
      element.attr('id', "input_#{_.uniqueId()}") unless element.attr('id')
      element.closest('form').parsley('addItem', "##{attrs.id}")

javascript:

代码语言:javascript
复制
angular.module('app').directive('parsleyValidateInput', function($timeout) {
  return {
    link: function(scope, element, attrs) {
      element.on('remove', function() {
        return element.closest('form').parsley('removeItem', "#" + attrs.id);
      });
      return $timeout(function() {
        if (!attrs.id) {
          attrs.id = "input_" + (_.uniqueId());
          element.attr('id', attrs.id);
        }
        return element.closest('form').parsley('addItem', "#" + attrs.id);
      });
    }
  };
});

用途:

代码语言:javascript
复制
<form parsley-validate>
   <div class='row' ng-repeat='book in books'>
   <input parsley-validate-input type='text' ng-model='books' required>
</form>
票数 6
EN

Stack Overflow用户

发布于 2015-05-29 12:08:19

有一种最简单的方法可以这样做,这是我使用的指令:

代码语言:javascript
复制
angular.module('app').directive('validateForm', function() {
  return {
    restrict: 'A',
    controller: function($scope, $element) {
      var $elem = $($element);
      if($.fn.parsley)
        $elem.parsley();
    }
  };
});

用法:

代码语言:javascript
复制
<form class="form-horizontal" ng-submit="login()" validate-form=""  novalidate="">

注意:novalidate=""用于阻止HTML5验证。

票数 3
EN

Stack Overflow用户

发布于 2015-01-22 15:12:29

我知道这条信息是旧的,但我想我会回复,希望它能帮助别人。

最后,我做了一些类似于@yagudaev的事情,但是使它更加通用,所以您不需要在每个元素上使用欧芹属性。相反,我们需要在form元素上使用它作为属性。我还考虑了表单是否是动态加载的,所以欧芹仍然可以验证它。这是用欧芹2.x和角1.3.x和1.4.x测试的。

http://ryanalberts.com/797/parsley-validation-with-angularjs/

我应该注意到,我最终使用了与ngMessage一起使用angulars验证的路线,但增强了它的验证功能,以允许使用值重用验证消息(即。值需要在X和Y之间。X和Y是自动插入的),这是欧芹天生比角ngMessage更好的表现,也是1.3+中新的形式验证。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19934222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档