2015-09-08 3 views
1

Я пытаюсь настроить прослушиватель событий в jQuery, но, похоже, не может заставить его работать. Любые советы/подсказки относительно того, что я делаю неправильно, будут очень признательны. Вот код:Почему этот слушатель событий jQuery не работает?

<script> 
$('.send').on('click', function() { 
    console.log('message sent'); 
    var text = $('.draft').val(); 
    Chat.send(text); 
}); 
</script> 
<input class="draft" type="text"/> <button class="send">Send</button> 

-EDIT-

Когда я говорю, что не работает, я имею в виду, что не кажется, обработчик событий должен быть запущен (консоль не показывает ничего, когда я нажмите кнопку отправки).

+0

Каковы симптомы? Что не работает? Вы проверили javascript-консоль на наличие ошибок? –

+0

Сначала определите «не работает». Во-вторых, чтобы получить значение ввода, используйте '.val()' в отличие от '.text()'. – JAAulde

+0

код выглядит нормально. insert 'console.log ('text:' + text),' между 'var text' и' Chat.send (text); ', чтобы посмотреть, что происходит в отладчике. – Data

ответ

3

В вашем HTML у вас есть вход

<input class="draft" type="text"/> 

и здесь в JQuery, вы делаете неправильно text();

var text = $('.draft').text(); 

должно быть val();

var text = $('.draft').val(); 

Fiddle

Edit:

Сделайте ваш скрипт DOM готов

//jQuery Library Always comes FIRST 
<script> 
$(document).ready(function() { 
    $('.send').on('click', function() { 
     console.log('message sent'); 
     var text = $('.draft').val(); 
     Chat.send(text); 
    }); 
}); 
</script> 

<input class="draft" type="text"/> 
<button class="send">Send</button> 
+0

Спасибо, обновил мой оригинальный вопрос и код. Попробовал перезапустить новый код на моей машине, но все еще не работает. – giwook

+0

что именно не работает? – Shehary

+0

у вас есть библиотека jQuery, а также вышеприведенный скрипт должен быть после библиотеки jQuery, когда-то мы делаем ошибки, помещая библиотеку jQuery в нижний колонтитул и пытаемся запустить скрипт на странице выше нижнего колонтитула, также проверьте свой журнал консоли для ошибок – Shehary

0
<input class="draft" type="text"/> <button class="send">Send</button> 
<script> 
    $('.send').on('click', function() { 
     console.log('message sent'); 
     var text = $('.draft').val(); 
     console.log(text); 
     //Chat.send(text); 
    }); 
</script> 
+0

Я забыл упомянуть, что я вырезал код из своей страницы; теги