Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.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 轨道&x2014;按Enter键发送聊天信息(ajax)_Javascript_Jquery_Ruby On Rails_Ajax - Fatal编程技术网

Javascript 轨道&x2014;按Enter键发送聊天信息(ajax)

Javascript 轨道&x2014;按Enter键发送聊天信息(ajax),javascript,jquery,ruby-on-rails,ajax,Javascript,Jquery,Ruby On Rails,Ajax,以下是聊天提交表单: #chat_form - remote_form_for :chat, :url=>{:controller => "chats", :action=> "new", :id=>@request.id }, :html => { :autocomplete => 'off' } do |f| = f.text_area "message_content", :rows=>5, :cols=>55, :a

以下是聊天提交表单:

  #chat_form
    - remote_form_for :chat, :url=>{:controller => "chats", :action=> "new", :id=>@request.id }, :html => { :autocomplete => 'off' } do |f|
      = f.text_area "message_content", :rows=>5, :cols=>55, :autocomplete => "off"
      = f.submit(value = "Sayit!", :class => "submit small")
聊天室#new.js.rjs

page << "$('#chat_message_content').val('')"
page.visual_effect :highlight, "chat_form"

page您可以将处理程序附加到将捕获enter的文本区域元素,如下所示:

$('#message_content').keypress( function( e ) {
  if( e.keyCode == 13 ) { $(this).closest('form').trigger('submit'); }
} );
但是人们不能在文本区域中添加新行,这是非常违反直觉的。对于单行输入,您可能需要一个常规文本字段(
input
元素),当用户按enter键时,该字段将触发表单的提交

$('#message_content').keypress( function( e ) {
  if( e.keyCode == 13 ) { $(this).closest('form').trigger('submit'); }
} );