简体   繁体   English

单击自定义按钮时调用日期选择器视图

[英]Call date-picker view on custom button click

I use this library for date-picker. 我将此用于日期选择器。 I am trying to open date-picker on clicking by custom button. 我试图按自定义按钮打开日期选择器。 This is my default input and it works fine. 这是我的默认输入,效果很好。

<input name="pickerFromDate" date-time ng-model="model[options.key]" id="pickerFromDate" min-view="month" class="edb-input input-group-input"
 placeholder="{{to.placeholder}}" max-date="maxDate" date-change="changeMinValue" format="MMM DD, YYYY" validation="required"
 watch-direct-changes="true" />

And here is my custom button, by clicking on this button i want to open my calendar view, like i a'm clicking on input. 这是我的自定义按钮,单击此按钮,我想打开日历视图,就像我单击输入一样。

<button type="button" class="btn btn-default" ng-click="setFocus($event);">
    <i class="fa fa-calendar"></i>
</button>

In my directive-controller I declared this functions 在我的指令控制器中,我声明了此功能

$scope.setFocus = function(data) {
    let input = $(data.target).closest('.cv-form-section').find('input');
    input.click();
};

I find the input, but triggering "click" or "focus" event cause an error. 我找到了输入,但是触发“单击”或“焦点”事件会导致错误。

Error: [$rootScope:inprog] $apply already in progress
  1. Import $timeout into your controller head setting $timeout导入控制器头设置
  2. Use it: 用它:
 $scope.setFocus = function(data) { let input = $(data.target).closest('.cv-form-section').find('input'); $timeout(function(){ input.click(); }) }; 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM