问题描述
我的AngularJs版本是 v1.4.3,在做表单验证时,遇到了问题。我希望达到的效果是:当表单内容为空时,登录按钮禁用。但现在是登录按钮没有被禁用。
-- HTML --<button disabled='disabled' name='sign' ng-click='vm.submit(sign_form)' ng-disabled='sign_form.$invalid' type='submit'>登录</button>-- AngularJS --
var app=angular.module('ayApp',[]);app.controller('ayAppCtrl',[’$scope’,function($scope){ var vm=$scope.vm={}; vm.d=storedb(’ay’).find(); vm.submit=function(sign_form){sign_form.$setDirty();if(sign_form.$valid){ alert('Success');} }}]);
问题解答
回答1:<input type='text' ng-model='test' required/> <button type='submit' ng-disabled='form.$invalid'>提交</button>回答2:scope上绑定了一个vm对象,然后你又创建一个vm,是想干什么。其次我觉得这个功能的实现不用自己写一个controller。
回答3:<form name='categoryAddBox'> <input type='text' ng-model='preAddCategoryName' required> <input type='submit' ng-click='addCategory($event)' value='确定' ng-disabled='!categoryAddBox.$valid'> </form>