如何在angularjs自定义指令中触发ng-change事件?

时间:2018-08-23 11:10:34

标签: angularjs ng-grid angularjs-ng-change jquery-multidatespicker

我将multidatepicker.js用于一项要求,该要求允许用户在日历中选择多个日期。对于用户进行的任何更改,我想触发一个ng-change事件。我使用自定义指令,并为输入字段实现了该指令。因为change事件是angularjs,所以我无法在custom指令中触发它。

HTML:我使用下面的模板,因为我在ng-grid中有输入字段。

$scope.cellSkipDeliveryDateTemplate = '<input type="text" multidatepicker ng-model="row.entity[col.field]"  ng-change="updateEntity(row)" style="width: 150px; height: 50px;  overflow-y: auto; "/>';

,自定义指令为:

app.directive("multidatepicker", function ()
{
    return {
        require: "?ngModel", 

        link: function (scope, elm, attrs, ngModel)
        {
            $(function()
            {
                angular.element(elm).multiDatesPicker({ dateFormat: 'yy-mm-dd' });
                elm.change(
                    function () {
                        ngModel.$setViewValue($(this).val());
                    }
                );
            })

        }
    }

});

有人可以帮忙介绍一下自定义指令,以便它以输入值作为参数来触发事件吗?

0 个答案:

没有答案