我应该如何在角度验证中修复ng-invalid和ng-pristine?

时间:2016-10-14 01:50:31

标签: javascript angularjs

我有一个关于角度验证的问题。

我的观点:

  1. 我在表单中有2个文本字段和1个按钮。
  2. 当页面加载时,按钮被ng禁用,其中ng-invalid status。
  3. 然后在文本字段中键入内容,按钮ng-disabled解锁。
  4. [问题]当我用键盘清除文本字段中的所有文本(如删除键)时,按钮被禁用,无法解锁状态。
  5. 如果不使用带文本字段的“必需”。
  6. 我已经放入了jsfiddle

        Console.WriteLine();
        Console.WriteLine("Enter your letter grades when prompted.");
        Console.WriteLine("=======================================");
        for (int a = 1; a == standardNumber; a++)
        {
            int num = 1;
            Console.WriteLine("Enter letter grade for honors class {0}:", num);
            switch (num)
            {
                case 1:
                    string class1 = Console.ReadLine();
                    break;
                case 2:
                    string class2 = Console.ReadLine();
                    break;
                case 3:
                    string class3 = Console.ReadLine();
                    break;
                case 4:
                    string class4 = Console.ReadLine();
                    break;
                default:
                    break;
            }
    
    
            Console.WriteLine();
    
        }
    }
    

1 个答案:

答案 0 :(得分:0)

我认为你不想用户"必需"文本域的属性和下面的属性可以使用

<div ng-app="appX">

<div ng-controller="validationCtrl">
                    <form name="xyzForm" novalidate>
                        <input
                            type="text"
                            name="name"
                            ng-model="xname"
                            ng-class="{'has-error': xyzForm.name.$invalid && !xyzForm.name.$pristine}"
                        />
                        <input
                            type="number"
                            name="age"
                            ng-model="xage"
                            ng-class="{'has-error': xyzForm.age.$invalid && !xyzForm.age.$pristine && xyzForm.age.$dirty}"
                        />
            <div>
                                    <button ng-click="submit()" ng-disabled="(xyzForm.$invalid || xyzForm.$pristine) || !xage || xname
==''">Submit</button>
            <span>invalid : {{xyzForm.$invalid}}</span>
            <span>pristine : {{xyzForm.$pristine}}</span>
            </div>
                    </form>
                </div>

</div>