Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS下拉列表在提交前需要验证_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJS下拉列表在提交前需要验证

Javascript AngularJS下拉列表在提交前需要验证,javascript,angularjs,Javascript,Angularjs,我的表格里有下拉列表。在我从列表中选择元素之前,我需要关闭我的提交btn。我的btn: <input type="submit" value="Get" ng-disabled="form.$invalid " /> 我试着用。但我的按钮只有在我选择元素并在之后选择emty时才失效。从一开始它就是可见的 编辑:添加了我所有的代码 <form name="form" ng-controller="Ctrl"> <select name="servi

我的表格里有下拉列表。在我从列表中选择元素之前,我需要关闭我的提交btn。我的btn:

<input type="submit" value="Get" ng-disabled="form.$invalid " />

我试着用。但我的按钮只有在我选择元素并在之后选择emty时才失效。从一开始它就是可见的

编辑:添加了我所有的代码

    <form name="form" ng-controller="Ctrl">

  <select name="service_id" class="Sitedropdown" style="width: 220px;"          
          ng-model="ServiceID" 
          ng-options="service.ServiceID as service.ServiceName for service in services"
          required> 
    <option value="">Select Service</option> 
  </select> 
  <span ng-show="myForm.service_id.$error.required">Select service</span>
  <input type="submit" value="Get" ng-disabled="form.$invalid " />
</form>

选择服务
选择服务

我想得到这样的错误消息:“需要服务”将禁用我的btn。

尝试为$pristine添加额外的签入:

<input type="submit" value="get" ng-disabled="form.$pristine || form.$invalid" />

尝试为$pristine添加额外的签入:

<input type="submit" value="get" ng-disabled="form.$pristine || form.$invalid" />

下面的代码片段给出了一个示例,根据问题中发布的代码,我想发表一些评论

  • 将类
    .form控件
    添加到所有文本
    元素中
  • 错误消息可以这样显示
    Required
  • 使用
    ng class
    控制所需字段,即使在提交检查后,也可以查看下面的说明
  • 表单要控制
    必填
    字段选项,即使在提交之后,也必须明确说明其行为应该是什么。因为在下拉式场景中,有时用户可能会在下面的代码中选择默认值,它是
    --选择业务流程--
    ,以便在我的代码中跟踪该值,我已经提到
    ng class=“{true:'error'}[提交和表单.businessprocess.$invalid]”
    当提交表单且指定的表单字段为
    $invalid
    时,这会告知其错误。在
    ng class
    属性中,它通常用作
    ng class=“{'has-success':inputform.email.$valid,'has error':inputform.email.$invalid}”

    
    您的测试下拉列表
    --选择业务流程--
    过程C
    过程Q
    要求的
    提交
    
    下面的代码片段给出了一个示例,根据问题中发布的代码,我想发表一些评论

  • 将类
    .form控件
    添加到所有文本
    元素中
  • 错误消息可以这样显示
    Required
  • 使用
    ng class
    控制所需字段,即使在提交检查后,也可以查看下面的说明
  • 表单要控制
    必填
    字段选项,即使在提交之后,也必须明确说明其行为应该是什么。因为在下拉式场景中,有时用户可能会在下面的代码中选择默认值,它是
    --选择业务流程--
    ,以便在我的代码中跟踪该值,我已经提到
    ng class=“{true:'error'}[提交和表单.businessprocess.$invalid]”
    当提交表单且指定的表单字段为
    $invalid
    时,这会告知其错误。在
    ng class
    属性中,它通常用作
    ng class=“{'has-success':inputform.email.$valid,'has error':inputform.email.$invalid}”

    
    您的测试下拉列表
    --选择业务流程--
    过程C
    过程Q
    要求的
    提交
    
    使用下面的代码进行表单验证

    HTML


    您可以在ng submit函数中将完整表单作为参数传递,以供进一步使用

    使用下面的代码进行表单验证

    HTML


    您可以在ng submit函数中将完整表单作为参数传递,以供进一步使用

    在ng上添加更多条件-禁用。你能分享一下你的表格代码吗?这样我就可以看到具体的解决方案。在代码中,将“novalidate”添加到表单的表单标记名中是“form”,并且在span的ng show中使用表单名“myForm”。将其更改为“form.service_id.$error.required”,在ng上添加更多条件-禁用。你能分享一下你的表格代码吗?这样我就可以看到具体的解决方案。在代码中,将“novalidate”添加到表单的表单标记名中是“form”,并且在span的ng show中使用表单名“myForm”。将其更改为“form.service\u id.$error.required”
    angular.module("myApp").controller("Ctrl", ["$scope", function($scope){
            $scope.mysubmit = function(){
              alert("mysubmit");
            };
    
            $scope.services = [{ServiceID : 1,ServiceName: "A" }, {ServiceID : 2,ServiceName: "B" }]
          }]);