如何从javascript函数获取ID到angularJS控制器

时间:2015-04-30 12:34:33

标签: javascript asp.net-mvc angularjs

我在cshtml页面上有这个javascript函数,并希望从此函数访问此页面的角度控制器上的id值。我该如何访问?

 var id;
function scheduler_change(e) {
    var view = this.view().element;
    view.off("click").on("click", ".k-event", function () {
        var events = e.events;
        if (events.length) {
             id = events[events.length - 1].appointmentID;
            var cat = events[events.length - 1].category;
            var subject = events[events.length - 1].title;
            var cuid = events[events.length - 1].cuid;
        }
    });
}

1 个答案:

答案 0 :(得分:0)

@Grundy是对的。由于Id是一个全局变量,您应该能够从角度访问它。但问题是当scheduler_change被触发时,event.length有一个值,Id将被更新。但是Angular无法知道这一点!!!

这是因为Angulars变化检测发生在角度边界内,Id现在已经超出边界。

您可能拥有的一个解决方案是使用可观察对象。请注意,这尚未得到广泛支持。 以下文章讨论了如何使用自己的可观察量。它可能会有所帮助。

Angular: Is it possible to watch a global variable (I.e outside a scope)?

祝你好运