gpt4 book ai didi

javascript - AngularJS - $event 为函数和 UI 传递,但为 'undefined' ?

转载 作者:行者123 更新时间:2023-12-03 03:00:28 26 4
gpt4 key购买 nike

我创建了一个与我之前做过的许多其他函数类似的函数,其中我通过放置 $event 的 Controller 传递了它,并且还在 HTML 中的元素函数调用中传递了 ng-change 事件,但控制台显示 $event 在所有浏览器中均未定义。

HTML:

<select data-ng-change="determineAbsenceInputs($event)"

JS:

$scope.determineAbsenceInputs = function($event) {
console.log($event.target);
}

也在 JSFiddle 中返回相同的值:http://jsfiddle.net/ADukg/16190/ .

与我编写的所有其他函数一样编写,我使用它来引用事件目标及其属性,但无法弄清楚为什么只针对此函数发生这种情况。

最佳答案

来自issue

ng-change is not a directive for handling the change event (I realize that this is confusing given the name), but is actually instead notified when ngModelController.$setViewValue() is called and the value changes (because ng-change adds a listener to the $viewChangeListeners collection). So this is as expected.

你应该使用 ng-model 代替

  <select data-ng-change="determineAbsenceInputs(selectedAbsenceType)" data-ng-model="selectedAbsenceType" id="absenceTypeSelect" name="absenceTypeSelect" material-select watch class="validate" required>

<强> WORKING DEMO

关于javascript - AngularJS - $event 为函数和 UI 传递,但为 'undefined' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47417995/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com