javascript - 如何使用 dom id 将普通 JavaScript keyup 监听器附加到 Angular md-autocomplete 输入?

标签 javascript angularjs init keyup md-autocomplete

我有一个像这样的 Angular md-autocomplete:

<md-autocomplete
    md-input-id="myid"
    ...>
</md-autocomplete>

我想这样做:

document.getElementById("myid")
    .addEventListener("keyup", function(event) {
        //my code
    }
});

我可以在 Angular Controller 中的哪里附加该事件监听器?我正在使用 ui.router。看起来每个页面都不是真正的新页面,而只是 dom 更新。所以我认为我需要一个渲染完成时的事件监听器,以便我可以使用 id 访问该元素。

最佳答案

如果您想将其绑定(bind)到按键事件,md-autocomplete 有一个名为 md-search-text-change 的属性,您可以在其中附加一个函数到您的作用域。

这是一个改编后的示例:https://plnkr.co/edit/Mih3sJTEiTjD2Qhresq6?p=preview

<md-autocomplete md-search-text-change="ctrl.searchTextChange(ctrl.searchText)"></md-autocomplete>

希望有帮助。

关于javascript - 如何使用 dom id 将普通 JavaScript keyup 监听器附加到 Angular md-autocomplete 输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39134545/

相关文章:

javascript - 如何通过位置ID选择元素?

javascript - 为什么我的 $digest() 迭代次数达到了?如何跟踪递归脚本的事件?

angularjs - Angular ng-repeat 中的条件/指令

objective-c - NSString 属性和自定义初始化

swift - 如何在 Swift 中创建一个简单的 UIViewController 并将其设置为起始 View

javascript - 导致 'Maximum call stack size exceeded' 的表单提交

javascript - 网格面朝向平面的颜色不同

php - $.post 返回 [object 对象]

javascript - 通过 REST 调用将 Sitecore 数据转换为 HTML

swift - Ios 开发 Swift 类和子类