所以我有一个下拉列表,当用户从列表中选择某些内容并按 Enter 而不是单击时,假设使用所选数据刷新页面。
它在 IE 和 Firefox 中运行良好,但 Safari 和 Chrome 似乎完全忽略了它。
这是我将属性添加到下拉列表的位置:
cboContext.Attributes.Add("OnKeyDown", "if (typeAhead(event,'" + cboContext.ClientID + "') == 1) contextPostback();");
它似乎忽略了 Chrome 和 Safari 中的 OnKeyDown 属性
编辑:
根据 Sime 和 Nil 的工作和评论,我发现 Chrome 无法识别 keyCode,它显示为未定义。
我已将 typeAhead() 代码放在jsFiddle
这是我为 keyCode 声明变量的地方:
var charCode = evt.keyCode || evt.which;
有谁知道为什么它会保持未定义?