我只是想禁用Enter键盘上的键.由于某些原因,以下脚本会锁定整个键盘,但仍然只允许使用该Enter键.
如果这有助于查明遗漏或错误,我使用的是VS 2005,VB.NET 2.0和IE 7.
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<script language="JavaScript">
function TriggeredKey(e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
if (window.event.keyCode = 13 ) return false;
}
</script>
</head>
<body onkeydown="TriggeredKey(this)">
Run Code Online (Sandbox Code Playgroud) 以下问题:
在我的网站上,我有两种形式.一个用于登录,一个用于主数据.我在mainform中只有一个提交按钮.loginform是通过mainform submit上的js提交的.
这很好用.但在Safari中我可以按Enter键,而我的焦点在登录表单中.这将发送没有mainform的登录表单,所以我收到一个错误(它将我重定向到我提交请求的json的简单视图).
是否可以禁用"按下输入"操作?
$(window).keydown(function(event){
if(event.keyCode == 13) {
event.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
以上是我得到的代码,它有效地将"输入"键作为整个系统中的表单提交者来杀死,这正是我想要的.但是,也会在textarea标记上禁用回车键- 用户应该能够点击该标记以进入下一行.那么有没有办法修改上面的代码来检测输入是否来自一个textarea标签,它不运行该event.preventDefault();行?
我在整个网站上有这么多形式 - 不得不单独配置它们将是一场噩梦,可能没有意义 - 必须有一种通用的方式.上面的代码在网站的每个页面上运行,以防止通过点击"输入"意外提交.
简单的例子:
<%= form_for :post, url: posts_path do |f|%>
<p>
<%= f.label :title%><br/>
<%= f.text_field :title%>
</p>
<p>
<%= f.label :text%><br/>
<%= f.text_area :text%>
</p>
<p>
<%= f.submit%>
</p>
<%end%>
Run Code Online (Sandbox Code Playgroud)
我认为这是一个Rails默认事件处理.在这里,如果用户按下回车键,则提交params.
但在我的情况下,我必须使用enter键进行另一个事件.
我必须users按回车键搜索另一个输入字段.
但是,如果我使用form_for它提交表单.:(
如何阻止使用回车键进行提交rails?
我必须使用普通的HTML标签吗?喜欢<form> tag和<submit> button?
好的解决方案?
我有一个带有禁用提交按钮的表单.即使用户无法按下此按钮,他仍然可以按Enter键提交表单.我该如何预防呢?
我知道之前已经问过这个问题,但我找不到满意的答案.所以我再问一次.
我有一个简单的表单,包含2个文本框和一个提交按钮.用户在任一文本框中输入文本后,他们无法通过Enter键提交,只有提交按钮才允许他们提交.我想陷阱输入按键并从onChange事件处理程序返回false会做到这一点,但显然不是,这仍然会导致表单提交...
function doNotSubmit(element) {
alert("I told you not to, why did you do it?");
return false;
}
</script>
<form id="myForm" action="MyBackEnd.aspx" method="post">
<table>
<tbody>
<tr>
<td>
Joe: <input id="JoeText" type="text" onChange="doNotSubmit(this)">
</td>
<td>
Schmoe: <input id="SchmoeText" type="text" onChange="doNotSubmit(this)" >
</td>
</tr>
</tbody>
</table>
<input type=submit>
Run Code Online (Sandbox Code Playgroud)
我在Chrome和FF(最新版本)上进行了测试.
你能告诉我如何阻止表格提交吗?
谢谢.
我想简单地在字段中按下Enter键,<input>或者替换Tab键按下.我还没决定哪个最好.
我怎么能在jQuery中做到这一点?到目前为止我有这个:
$(document).ready(function(){
...
//handle enter key
$("input").keypress(function (e) {
var k = e.keyCode || e.which;
if (k == 13) {
//???
}
});
});
Run Code Online (Sandbox Code Playgroud)
(这个问题e.keyCode || e.which推荐给那部分.)
我可以放在哪里(a)取消事件或者(b)强制按Tab键?
看看这个现场演示(来自jQuery的网站).
点击-(DASH)在Firefox说event.which是173,一边做同样的在Chrome中产生189.
这个jQuery页面说event.which应该针对跨浏览器的一致性进行规范化.但是,看起来这不是真的.
为什么这种不一致?
我有一个带有一些输入字段的html表单,其中一个输入字段是搜索字段,当我点击此搜索输入字段旁边的搜索按钮时,搜索结果将使用ajax从服务器返回,我想要的是防止当用户关注此特定搜索输入字段并按Enter键时,表单提交.顺便说一下,我正在使用AngularJS,因此解决方案可能与JQuery或纯JavaScript方式有点不同我认为..可行吗?任何意见,将不胜感激!
在上一个问题中,我问了同样的问题,但是当用户在文本框中时,我没有阻止提交的答案.
所以基本上我需要的是能够阻止一个人提交表单,除非明确点击提交按钮.
编辑:
基本上这样做的主要原因是这是雇主调查.在这方面的人不会是技术上最精明的,我正在为此做的客户要求这样做.