麻烦使用单击事件将用户输入发送到服务器

时间:2013-04-23 00:01:02

标签: jquery javascript-events click

首先,我只是想感谢那里的所有帮助。你们真棒。基于点击提交按钮,我在整理活动时遇到了一些麻烦。我的目标是当用户按下“发送”按钮时,在页面顶部的字段中使用用户输入运行Chat.send()函数。重申一下,我想在用户点击发送按钮时将文本栏中的字符串传递给Chat.send()。我对此很陌生,并寻找一个小方向。我对它进行了攻击,但它根本不起作用..

 <!DOCTYPE html>
  <html>
   <head>
     <meta charset="utf-8">
     <script src="http://chatbuilder.hackreactor.com/ChatBuilder.js"></script>
      </head>
        <body>
          <script>
           Chat.guide.start();
          </script>


   <h2>Borken Chat</h2>

      <input class="draft" type="text"/> <button class="send" disabled>send</button>



<ul class="messages">

  <script>
     var Chat_Messages=[];

  function fetchNew() {
    var PrintChat=function(Chat_Messages){
    var y=Chat_Messages.length;
    for(i=0;i<y;i++){
      Chat.display(Chat_Messages[i]);
    }
    }
 Chat.fetch(PrintChat);
 }

 setInterval(fetchNew,3000);


 /*
 *$('#send').click(function(){
  var Input=<input class="draft" type="text">
  Chat.send(Input)
 }) **This was my attempt. I was trying to use the "send" button to trigger an event that calls Chat.fetch on a variable that I         was trying to define as the user input*/



  </script>

</ul>

 </body>
</html>

2 个答案:

答案 0 :(得分:2)

试试这个:

$(function(){

  // <-- Stick the rest of your code here.

  $('.send').click(function(){      
    Chat.send($('.draft').val())
  });
});

答案 1 :(得分:0)

我知道这是一个非常古老的问题,但我能够弄明白(大部分时间),所以我想我会分享我的所作所为。我主要担心的是如何从<input class="draft" type="text"/>中获取文本。我决定只给它分配一个像<input class="draft" type="text" value=""/>

这样的值

以及代码的其余部分 -

$('.send').on('click', function(){
var myMessage = $('.draft').val();
Chat.send(myMessage);
});

它发送到服务器,但我现在唯一的问题是,当点击.send时,我输入的文字不会消失。难以理解。