我已经为时间选择(FROM和TO)提供了2个输入文本,并提交了一个按钮。最初我的按钮被禁用,这意味着每当用户编辑时间FROM和TO我的按钮被启用。我的函数名是enable()。下面是我的代码,我只在其中显示FROM到TO。我需要在input或md-input-container上调用enable()。
<md-content class=" pad-hori-27 margin-left66" ng-if="!contactDetails.isAllTime">
<div>
<md-input-container>
<label>From Time</label>
<input mdc-datetime-picker="" date="false" time="true" type="text" id="time2" placeholder="Time" min-date="minDate" format="HH:mm a" ng-model="contactDetails.timePeriod.fromTime" class=" md-input">
</md-input-container>
<md-input-container>
<label>To Time</label>
<input mdc-datetime-picker="" date="false" time="true" type="text" id="time2" placeholder="Time" min-date="minDate" format="HH:mm a" ng-model="contactDetails.timePeriod.toTime" class=" md-input">
</md-input-container>
</div>
</md-content>
答案 0 :(得分:0)
此
需要ng-change
属性
<input mdc-datetime-picker="" md-select="enable()" date="false" time="true" type="text" id="time2" placeholder="Time" min-date="minDate" format="HH:mm a" ng-model="contactDetails.timePeriod.fromTime" class=" md-input">
你可以像这样在集合上创建一个手表:
$scope.$watch('contactDetails.timePeriod.fromTime', function(newValues, oldValues){
if(newValues != oldValues) {
$scope.enable();
}
});
答案 1 :(得分:0)
您可以借助ng-change或ng-click指令调用函数
喜欢
<input mdc-datetime-picker="" ng-change="enable()" date="false" time="true" type="text" id="time2" placeholder="Time" min-date="minDate" format="HH:mm a" ng-model="contactDetails.timePeriod.fromTime" class=" md-input">
但是代替调用功能启用按钮,你可以角度js表单验证 https://docs.angularjs.org/guide/forms
答案 2 :(得分:0)
我不确定您是否需要在每次更改输入时调用enable。 相反,在按钮上使用ng-disabled,提供填充FROM和/或TO的功能。
如果您确实需要在更改时调用启用,请使用ng-change。
编辑(详细解决方案) 对于它的价值,这是我的建议。
angular.module('changeExample', [])
.controller('ExampleController', ['$scope', function($scope) {
$scope.value = '';
$scope.disable = function() {
return $scope.value === '';
};
}]);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="changeExample">
<div ng-controller="ExampleController">
<input type="value" ng-model="value" id="ng-change-example1" />
<button ng-disabled="disable()">Submit</button>
<p>
Value is "{{value}}" (activated: {{!disable()}})
</p>
</div>
</div>
&#13;
请注意,这是使用Angular执行此操作的标准方法,而不是像建议的那样依赖 $ watch 。
干杯