Javascript 表单验证在angularJs中不起作用?
我无法在AngularJS表单验证中找到错误 JavaScript:Javascript 表单验证在angularJs中不起作用?,javascript,angularjs,Javascript,Angularjs,我无法在AngularJS表单验证中找到错误 JavaScript: sidemenu.controller('galleryCtrl', ['$scope', '$rootScope', 'PropertyDetails', '$window', '$location', '$routeParams', 'allServices', 'customVariables', '$mdDialog', function (a, b, p, $window, l, r, e, cust, md) {
sidemenu.controller('galleryCtrl', ['$scope', '$rootScope', 'PropertyDetails', '$window', '$location', '$routeParams', 'allServices', 'customVariables', '$mdDialog', function (a, b, p, $window, l, r, e, cust, md) {
var vm = this;
a.imageSlide = true;
vm.user = {
first_name: "",
email_id: "",
selected_id: "",
phone: ""
};
}]);
HTML:
名字{{登记表。名字。$pristine}
必须输入您的姓名
提出询问
我试图在上面的html代码中打印这行代码是
{{register\u form.first\u name.$pristine}
不打印任何内容。因此,我无法找到其中的错误。有一个更简单的解决方案来查找表单错误。您只需在html代码中添加以下内容:
<p>{{ register_form.$error }}<p>
{{register\u form.$error}}
第二,您不应使用$invalid
输入名字,但应使用注册表单.user\u first\u name.$error.required
您还可以在
希望有帮助
Br您的数据绑定有几个问题
输入中编辑ng模型
,以匹配中的模型
您的控制器
。您的数据库中有ng model=“user.first\u name”
HTML
在控制器中有一个名为vm.user
的对象
所以你应该改变:
ng-model="user.first_name"
致:
输入中使用了name=“first\u name”
,而您稍后在消息的ng show
中使用register\u form.user\u first\u name
引用它
您应该将其更改为:
ng-show="register_form.first_name.$invalid && !register_form.first_name.$pristine"
HTML
中打印用户名,您应该参考模型对象,而不是表单input
,因此您需要从以下位置更改标签:
<label>firstName{{register_form.first_name.$pristine}}</label>
firstName{{register\u form.firstName.$pristine}
对下列事项:
<label>firstName {{vm.user.first_name}}</label>
firstName{{vm.user.first_name}
随数据变化而改变ng型号值
<p ng-show="register_form.first_name.$invalid && !register_form.first_name.$pristine" class="help-block">You name is required.</p>
必须输入您的姓名
您还应将此信息放入
data ng disabled=“register\u form.$invalid”
我的答案是否符合您的需要?
<label>firstName {{vm.user.first_name}}</label>
<p ng-show="register_form.first_name.$invalid && !register_form.first_name.$pristine" class="help-block">You name is required.</p>