javascript - 数据绑定按键事件在 div 上不起作用
问题描述
所以我最近遇到了这个问题。
目标是使用回车键打开选定的行,也可以使用箭头上下移动。为了打开 selected div ,我需要将 selected 的名称传递给启动它的函数。因此,检测目标元素很重要。
项目使用 Knockout js,所以我有这样的代码:
<div class="prod-item k-widget" id="#:Id#" data-bind=" events: { click: prodItem_onClick, dblclick: btnStartPopup_onClick,}">
哪个工作正常,确实会触发 prodItem_onClick 和 btnStartPopup_onClick。
现在我需要一个捕获按键的事件处理程序。所以我继续做同样的事情并添加另一个事件处理程序。
<div class="prod-item k-widget" id="#:Id#" data-bind=" events:{keyup: moveList, click: prodItem_onClick, dblclick: btnStartPopup_onClick,}">
现在奇怪的事情开始发生。首先,它不会触发 moveList 函数。我试过'a'标签,它也没有工作。但是它在输入事件上工作正常。但我需要它在一个有两行且不是输入类型的 div 上工作。
我也尝试使用 jQuery 捕获按键事件,这里的问题是我无法获取目标元素。我得到了整个容器 div 的 html。
任何想法如何解决这个问题?
解决方案
看起来像语法错误
示例事件绑定:
<div data-bind="event: { mouseover: enableDetails, mouseout:disableDetails }"> Mouse over me
</div>
在你的情况下
<div class="prod-item k-widget" id="#:Id#" data-bind="event:{keyup: moveList},click: prodItem_onClick, dblclick: btnStartPopup_onClick">
推荐阅读
- javascript - 在javascript中调用被子类覆盖的父类函数
- c# - UWP 项目可以包含没有打包项目的桌面 exe 吗?
- laravel - 在视图中调用模型中定义的方法。不工作
- xamarin.forms - How to solve parse error while installing an apk?
- android - ListView cannot get height. ImageView image is height uncertain
- wordpress - 来自 wp-admin 的登录作者重定向到主页
- php - How to check if user selected file for upload php
- java - JDK7 运行时错误:未找到数据源名称且未指定默认驱动程序
- java - 数组列表
与数组列表 - 都存储从 0 到 9 的值 .. 哪个需要更多内存? - javascript - 在laravel中搜索时获取关系数据