在文本框中按回车键时的 JQuery 执行函数
JQuery execute function when enter is pressed in a textbox
$(document).keypress(function(e) {
if(e.which == 13) {
$("#submitButton").click();
}
});
这就是我在页面中按 Enter 时必须执行的功能,但这与我的dropdown list
键盘导航冲突。
<div class="form-group" id="contractGroup">
<label for="inputContract" class="col-sm-5 control-label">Contract Type <b>*</b></label>
<div class="col-sm-7">
<div class="input-group" id="contractPicker">
<div class="input-group-btn">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false"><span class="caret"></span></button>
<ul class="dropdown-menu" role="menu">
<li><a href="#">Full-time</a></li>
<li><a href="#">Part-time</a></li>
</ul>
</div>
<asp:TextBox runat="server" type="text" class="form-control" ID="inputContract" placeholder="Full time, Part time"></asp:TextBox>
</div>
</div>
</div>
尝试按 Tab 键浏览 dropdown list
时,您必须使用 Enter 来选择项目,这也同时执行我的函数,这是我不想要的。
我知道它可以为每个textbox
执行功能,检查是否在该textbox
具有焦点时按下了 Enter 键,但我有超过 20+ 个,宁愿避免这种情况。而且我知道我可以使用asp:panel defaultbutton
但这忽略了我的 jquery 函数并调用代码隐藏而不是 jquery 函数,因为我有 2 个linking buttons
充当一个,其中一个不能asp:button
这是asp:panel
所需的。
另一种解决方案是以某种方式使dropdown list
区别对待,而不是作为"当前页面"。我正在使用引导datepicker
,当键盘在日历弹出窗口中导航时,我可以在不调用我的函数的情况下使用 enter。如果可能的话,我希望有一个功能来检测页面上的任何textbox
是否按下了 enter。干杯
尝试将
id 添加到下拉div 中,并为其绑定一个点击侦听器,以防止它冒泡。像...
$("#dropdown-list").keypress(function(e) {
e.preventDefault();
});
相关文章:
- 对页面重新加载 Jquery 执行操作
- 我可以使用ajax/javascript/jquery执行curl命令吗
- jquery 执行行为
- Jquery执行基于元素'的父标记
- 等待JQuery执行,直到加载了整个页面,中断执行
- 停止jQuery执行任何进一步的代码
- 使用jQuery执行PHP脚本onclick
- 在JS上使用JQuery执行简单任务的任何原因
- 从javascript或JQuery执行服务器端cgi代码时遇到问题
- 满足两个条件时的 jQuery 执行函数
- 使用 jQuery 执行动态传递的函数调用
- 当输入某些内容时,使用 jquery 执行某些操作
- 使用 JQuery 执行服务器端验证,然后将用户发送到另一个站点
- 如何确保我的点击函数仅使用 Jquery 执行一次
- Jquery 执行函数 第三方函数结束后
- 在文本框中按回车键时的 JQuery 执行函数
- 如果我的文本区域为空,请使用jquery执行此操作
- 从javascript/jquery执行系统命令
- document.getElementById(“id”).对jQuery执行操作
- 通过jQuery执行键盘命令