Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当我在表单中的某个文本\字段\标记中按Enter键时,如何禁用发出POST请求_Javascript_Ruby On Rails 3_Dom Events - Fatal编程技术网

Javascript 当我在表单中的某个文本\字段\标记中按Enter键时,如何禁用发出POST请求

Javascript 当我在表单中的某个文本\字段\标记中按Enter键时,如何禁用发出POST请求,javascript,ruby-on-rails-3,dom-events,Javascript,Ruby On Rails 3,Dom Events,我有表单,里面有一些文本字段标签。当我在其中一个*标签中点击回车键时,它会向提供的URL发出一个POST请求,我想禁用它并执行其他操作 <%= form_for 'sample', :url => sample_path, :remote => true do %> <%= text_field_tag :field_1, nil, :class => 'input', :onKeyPress=>"return disableEnt

我有表单,里面有一些文本字段标签。当我在其中一个*标签中点击回车键时,它会向提供的URL发出一个POST请求,我想禁用它并执行其他操作

  <%= form_for 'sample', :url => sample_path, :remote => true do %>
    <%= text_field_tag :field_1, nil, :class => 'input', :onKeyPress=>"return disableEnterKey(event)" %>
    <%= text_field_tag :field_2, nil, :class => 'input', :onKeyPress=>"return disableEnterKey(event)" %>
      <%= submit_tag "Send", :id => 'send', :class => 'floatright' %>
    </div>
  <% end %> 
正在调用此
disableEnterKey
,但POST请求也是如此。 如何禁用默认的
onKeyPress
并覆盖事件

Ruby:“1.8.7”

Rails:3.2.8

您需要使用:

e.preventDefault();
所以它看起来是这样的:

disableEnterKey=函数(e){
var代码=(e.keyCode?e.keyCode:e.which);
如果(code==13){//输入keycode
e、 预防默认值();
//做点别的
}
};

已解决,如果返回false;在disableEnterKey的末尾,它也不会发出POST请求。感谢@ujm的快速反馈

这是有效的,但e.预防违约();需要在函数的末尾,在我的例子中,在//之后做一些其他的事情。工作正常,但实践不好。使用.preventDefault()是他试图限制的正确行为。
e.preventDefault();