填写表单时激活设置按钮(Angular)

时间:2015-08-04 12:47:19

标签: javascript angularjs

我有以下控制器和指令:

app.controller('controlFormulario', ['$scope', function($scope) {
  var cf = this;
  cf.formulario = [];
  cf.formulario.fecha = new Date();

  if(cf.formulario.texto != null && cf.formulario.titulo != null){
    this.formulario.isDisabled = false;
  }
}]);

app.directive('formulario', [function() {
  return {
    restrict: 'E', // C: class, E: element, M: comments, A: attributes
    templateUrl: 'modules/formulario.html',

  };
}]);

这是按钮的DOM元素,当标题和文本字段中有一些文本时我想要启用它:

<div class="form-group" ng-init="formCtrl.formulario.isDisabled = true">
  <button class="btn btn-primary" style="height:35px;width:100px;float:right;" id="submit" disabled={{formCtrl.formulario.isDisabled}}>
  Enviar
  </button>
</div>

目前,启用按钮的控制器功能根本不起作用。我已经在处方集的主要div中实例化了它,并且它与数据绑定一起正常工作,但是它以某种方式不启用按钮。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

使用ng-disabled代替disabled属性。

<button class="btn btn-primary" style="height:35px;width:100px;float:right;" id="submit" ng-disabled="formCtrl.formulario.isDisabled">

来自链接文档:

  

特殊指令是必要的,因为我们不能使用插值   在disabled属性中。

另外,使用$scope将数据公开给视图,而不是thisthis refers to the controller, not to the $scope that the view can see.

答案 1 :(得分:0)

使用ng-disabled代替disabled