Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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 1.x依赖于验证_Javascript_Angularjs_Validation_Angularjs 1.6 - Fatal编程技术网

Javascript AngularJS 1.x依赖于验证

Javascript AngularJS 1.x依赖于验证,javascript,angularjs,validation,angularjs-1.6,Javascript,Angularjs,Validation,Angularjs 1.6,我有以下三个输入字段 <input type="text" autocomplete="off" name="work_phone" id="work_phone" placeholder="Work Phone" class="form-control" data-ng-model="addCareAdminController.careAdminModel.workPhone" data-ng-required="!(addCareAdminContro

我有以下三个输入字段

<input type="text" autocomplete="off" name="work_phone" id="work_phone" 
    placeholder="Work Phone" class="form-control" 
    data-ng-model="addCareAdminController.careAdminModel.workPhone"  
    data-ng-required="!(addCareAdminController.careAdminModel.mobilePhone 
    || addCareAdminController.careAdminModel.pagerPhone)"/>

<input type="text" autocomplete="off" name="mobile_phone" id="mobile_phone" 
    placeholder="Mobile Phone" class="form-control"
    data-ng-model="addCareAdminController.careAdminModel.mobilePhone" 
    data-ng-required="!(addCareAdminController.careAdminModel.workPhone 
    || addCareAdminController.careAdminModel.pagerPhone)"/>

<input type="text" autocomplete="off" name="pager_phone" id="pager_phone" 
    placeholder="Pager Number" class="form-control"
    data-ng-model="addCareAdminController.careAdminModel.pagerPhone" 
    data-ng-required="!(addCareAdminController.careAdminModel.workPhone 
    || addCareAdminController.careAdminModel.mobilePhone)"/>
我需要的验证就像我从主通信选择框中选择任何选项时说“Mobile Phone”,如果移动电话的输入字段未提供任何值,我需要在该输入字段下方显示错误消息。其他选项也是如此。我也希望在二次沟通中产生同样的效果

注意:我已经在手机、工作和寻呼机输入字段中使用了ng required,以进行另一次验证

<form class="login-form" name="Form" id="Form" ng-controller="AddCareAdminController as addCareAdminController" ng-submit="loginForm.$valid && addCareAdminController.save()" novalidate>
     <input type="text" autocomplete="off" name="work_phone" id="work_phone" placeholder="Work Phone" class="form-control" data-ng-model="addCareAdminController.careAdminModel.workPhone" data-ng-required="addCareAdminController.careAdminModel.primaryCommunication=='CWPH'||addCareAdminController.careAdminModel.secondaryCommunication=='CWPH'" data-ng-model="addCareAdminController.careAdminModel.mobilePhone" data-ng-required="addCareAdminController.careAdminModel.primaryCommunication=='CMPH'||addCareAdminController.careAdminModel.secondaryCommunication=='CMPH'" required="true"/>
     <span class="text-danger" ng-show="Form.$submitted && Form.work_phone.$error.required"><b>Enter valid Work Pager</b></span>

     <input type="text" autocomplete="off" name="mobile_phone" id="mobile_phone" placeholder="Mobile Phone" class="form-control" data-ng-model="addCareAdminController.careAdminModel.mobilePhone" data-ng-required="addCareAdminController.careAdminModel.primaryCommunication=='CPNO'||addCareAdminController.careAdminModel.secondaryCommunication=='CPNO'" required="true"/>
     <span class="text-danger" ng-show="Form.$submitted && Form.mobile_phone.$error.required"><b>Enter valid Mobile Phone</b></span>

     <input type="text" autocomplete="off" name="pager_phone" id="pager_phone" placeholder="Pager Number" class="form-control" data-ng-model="addCareAdminController.careAdminModel.pagerPhone"/>
     <span class="text-danger" ng-show="Form.$submitted && Form.pager_phone.$error.required"><b>Enter valid Page Phone</b></span>

     <select name="primary_communication" id="primary_communication" class="form-control" data-ng-model="addCareAdminController.careAdminModel.primaryCommunication" data-ng-options="type.code as type.description for type in addCareAdminController.communicationTypes">
       <option value="">Select Primary Communication</option>                                                    
     </select>
     <span class="text-danger" ng-show="Form.$submitted && Form.primary_communication.$error.required"><b>Select primary communication</b></span>

     <select name="secondary_communication" id="secondary_communication" class="form-control" data-ng-model="addCareAdminController.careAdminModel.secondaryCommunication" data-ng-options="type.code as type.description for type in addCareAdminController.communicationTypes">
       <option value="">Select Secondary Communication</option></select>
     <span class="text-danger" ng-show="Form.$submitted && Form.secondary_communication.$error.required"><b>Select secondary communication</b></span>
</form>
注意:此验证在表单提交时启动


您可以将输入包装在表单中并进行验证。检查select的
ng型号
是否为移动电话、工作电话或寻呼机,以启用相应输入的必填字段

var myApp=angular.module('myApp',[]);
myApp.controller('myController',['$scope',函数($scope){
var self=这个;
self.communicationTypes=[
{代码:“CMPH”,组码:“COMM-METH”,说明:“手机”},
{代码:“CWPH”,组码:“COMM-METH”,说明:“工作电话”},
{代码:“CPNO”,组码:“COMM-METH”,说明:“寻呼机号码”},
{代码:“CEMA”,组码:“COMM-METH”,说明:“Email”}
]
}]);

工作电话是必需的
手机是必需的
需要寻呼机电话
请至少填写其中一个字段。
选择主通信
选择辅助通信

这是可行的,但我已经使用了ng required进行另一次验证,它会显示不同的错误消息。是否已经使用ng required进行另一次验证,它会显示不同的错误消息?您可以将上述错误更改为您想要的任何内容。@karthiI正在使用
ng required=“!(addCareAdminController.careAdminModel.mobilePhone | | addCareAdminController.careAdminModel.pagerPhone)”
进行另一次验证,其相应的错误消息是
,请至少填写其中一个字段。
。在这篇文章中,我如何整合你的。上面是哪一个输入字段?所有三个输入字段(移动、工作和寻呼机)。我正在进行上述验证。
self.communicationTypes = [
{code: "CMPH", groupCode: "COMM-METH", description: "Mobile Phone"}
{code: "CWPH", groupCode: "COMM-METH", description: "Work Phone"}
{code: "CPNO", groupCode: "COMM-METH", description: "Pager Number"}
{code: "CEMA", groupCode: "COMM-METH", description: "Email"}
]
<form class="login-form" name="Form" id="Form" ng-controller="AddCareAdminController as addCareAdminController" ng-submit="loginForm.$valid && addCareAdminController.save()" novalidate>
     <input type="text" autocomplete="off" name="work_phone" id="work_phone" placeholder="Work Phone" class="form-control" data-ng-model="addCareAdminController.careAdminModel.workPhone" data-ng-required="addCareAdminController.careAdminModel.primaryCommunication=='CWPH'||addCareAdminController.careAdminModel.secondaryCommunication=='CWPH'" data-ng-model="addCareAdminController.careAdminModel.mobilePhone" data-ng-required="addCareAdminController.careAdminModel.primaryCommunication=='CMPH'||addCareAdminController.careAdminModel.secondaryCommunication=='CMPH'" required="true"/>
     <span class="text-danger" ng-show="Form.$submitted && Form.work_phone.$error.required"><b>Enter valid Work Pager</b></span>

     <input type="text" autocomplete="off" name="mobile_phone" id="mobile_phone" placeholder="Mobile Phone" class="form-control" data-ng-model="addCareAdminController.careAdminModel.mobilePhone" data-ng-required="addCareAdminController.careAdminModel.primaryCommunication=='CPNO'||addCareAdminController.careAdminModel.secondaryCommunication=='CPNO'" required="true"/>
     <span class="text-danger" ng-show="Form.$submitted && Form.mobile_phone.$error.required"><b>Enter valid Mobile Phone</b></span>

     <input type="text" autocomplete="off" name="pager_phone" id="pager_phone" placeholder="Pager Number" class="form-control" data-ng-model="addCareAdminController.careAdminModel.pagerPhone"/>
     <span class="text-danger" ng-show="Form.$submitted && Form.pager_phone.$error.required"><b>Enter valid Page Phone</b></span>

     <select name="primary_communication" id="primary_communication" class="form-control" data-ng-model="addCareAdminController.careAdminModel.primaryCommunication" data-ng-options="type.code as type.description for type in addCareAdminController.communicationTypes">
       <option value="">Select Primary Communication</option>                                                    
     </select>
     <span class="text-danger" ng-show="Form.$submitted && Form.primary_communication.$error.required"><b>Select primary communication</b></span>

     <select name="secondary_communication" id="secondary_communication" class="form-control" data-ng-model="addCareAdminController.careAdminModel.secondaryCommunication" data-ng-options="type.code as type.description for type in addCareAdminController.communicationTypes">
       <option value="">Select Secondary Communication</option></select>
     <span class="text-danger" ng-show="Form.$submitted && Form.secondary_communication.$error.required"><b>Select secondary communication</b></span>
</form>
  var App = angular.module('App', []);
  App.controller('AddCareAdminController', ['$scope', function ($scope) {
  var self=this;
  self.communicationTypes = [
    {code: "CMPH", groupCode: "COMM-METH", description: "Mobile Phone"},
    {code: "CWPH", groupCode: "COMM-METH", description: "Work Phone"},
    {code: "CPNO", groupCode: "COMM-METH", description: "Pager Number"},
    {code: "CEMA", groupCode: "COMM-METH", description: "Email"}
   ]
 }]);