单击Save&amp ;;实现自定义验证在angularjs

时间:2016-05-09 08:02:35

标签: angularjs

我是angularjs的新手,我需要开发单页面应用程序。我需要实现角度验证。

我在页面上有10个字段(输入,选择和列表框)和2个按钮(保存并提交)。当我点击保存时,6个字段(例如)应该有有效值,当我点击提交按钮时,应该检查8个字段。

但问题是。如果我在页面上使用了表单标签,那么如何实现这些验证。

我们将不胜感激。

1 个答案:

答案 0 :(得分:0)

将此代码写入控制器

obj.hasErrorWithsubmit = function (form, field, validation) {
    if (validation) {
        return ($scope.submitted && form[field].$error[validation]);
    }
    return (form[field].$dirty && form[field].$invalid) || ($scope.submitted && form[field].$invalid);
};


    obj.hasErrorWithsave = function (form, field, validation) {
    if (validation) {
        return ($scope.save && form[field].$error[validation]);
    }
    return (form[field].$dirty && form[field].$invalid) || ($scope.submitted ``&& form[field].$invalid); };

在html中写下

 ng-class="{'classname':obj.hasErrorWithsubmit(Formname,'fieldname','validationType')}">

ng-class="{'classname':obj.hasErrorWithsubmit(myform,'textfield1','required')}">

ng-class="{'classname':obj.hasErrorWithsave (myform,'textfield2','required')}">

classname是一个使边框变为红色的css类

点击提交按钮,使$ scope.submitted = true 通过单击保存按钮,使$ scope.save = true