Javascript 角度验证不适用于“选择”

Javascript 角度验证不适用于“选择”,javascript,angularjs,validation,Javascript,Angularjs,Validation,这是一个简单的表单,一个下拉列表和一个保存按钮。在页面加载时,选择应为ng无效,因为它是必需的,并且未选择任何内容,但窗体和选择都是ng有效的,并且调用了保存函数。 一旦我选择了任何东西并取消选择它。然后它会正常工作 <form role="form" name="frmVariableConfig" id="frmVariableConfig" novalidate ng-submit="frmVariableConfig.$valid && sa

这是一个简单的表单,一个下拉列表和一个保存按钮。在页面加载时,选择应为ng无效,因为它是必需的,并且未选择任何内容,但窗体和选择都是ng有效的,并且调用了保存函数。 一旦我选择了任何东西并取消选择它。然后它会正常工作

            <form role="form" name="frmVariableConfig" id="frmVariableConfig" novalidate ng-submit="frmVariableConfig.$valid && saveChanges()">

            <div>
                <div class="form-group">
                    <div class="form-group control-group">
                        <span>Logic</span>


                        <select name="service_id" class="Sitedropdown" style="width: 220px;"
                                ng-model="CurrCustomer.Logic"
                                ng-options="service.ServiceID as service.ServiceName for service in services"
                                required="">
                            <option value="">Select Service</option>
                        </select>
                    </div>

                </div>
            </div>
            <div>
                <button type="submit" class="btn btn-sm text-right">Save</button>
            </div>
        </form>

您需要删除setter
$scope.CurrCustomer.Logic=false从正在填充<代码>ng模型的控制器中,并使其在控制器加载时有效。填写
CurrCustomer.Logic
值后,它将根据需要成为有效输入。

它有帮助。但现在的问题是,我看不到验证消息“this is the required field”(这是必填字段),除非选择了某些内容,否则它不会允许我调用save函数。但我看不到验证消息。这和诺瓦利达有关吗?@RaasMasood我在你的标记中没有看到的消息在哪里?你说的是浏览器弹出窗口吗?我说的是在验证出错时弹出的不显眼的验证错误。@RaasMasood yes..这是因为
novalidate
属性
(function () {
'use strict';
var controllerId = 'dashboard';
angular.module('app').controller(controllerId, ['$scope', dashboard]);

function dashboard($scope) {


    $scope.CurrCustomer = {};
    $scope.CurrCustomer.Logic = false;
    $scope.saveChanges = function () {
        alert('function called');

    };
    $scope.services = [
{ ServiceID: 1, ServiceName: 'Service1' },
{ ServiceID: 2, ServiceName: 'Service2' },
{ ServiceID: 3, ServiceName: 'Service3' }
    ];
}})();