按下Click和Enter / Return(键)执行jQuery函数

我正在尝试创建一个小搜索框,允许您根据您在输入字段中输入的关键字搜索Twitter。 虽然它有效,但只有在按下“提交”按钮时才有效。 我还希望能够按Enter或Return键来启动搜索。 我已经尝试使用.sumbit函数并将我的输入包装在表单元素周围但没有成功。 任何见解都会非常感激!

  $(document).ready(function(){ function(data) { $('#startSearch').click(function(){ $('#tweets .results').remove(); var searchTerm = 'http://search.twitter.com/search.json?q=' + $('#twitterSearch').val() + '&callback=?' $.getJSON(searchTerm, function(data) { $.each(data.results, function() { $('
') .hide() .append('' + '' + '') .append('' + '' + this.from_user + '') .append('' + this.text + '') .append('' + relTime(this.created_at) + '') .appendTo('#tweets') .fadeIn(); }); });

           

编辑:正如Spudley所说:“使用jQuery的一个要点是阻止你必须使用嵌入在HTML标记中的事件触发器”,这样一个更好的解决方案就是

  

或 – 以前的提案:

  

如果你想要不带突兀的js的地方活动那么你也可以使用这个系统:

 $("#element").keydown(function(event) { if (event.keyCode == 13) { // do stuff } 

如果你有一个提交按钮,这是另一种选择,#element必须是你想要捕获事件的文本字段。

参考: 答案

尝试为按键和鼠标单击创建侦听器。

 function myFunction(e){ if (e.which=='13' || e.type=='click'){ // Run your code here } } $(document) .on('click', '#startSearch', myFunction) .on('keypress', this, myFunction); 

在行动http://codepen.io/scottyzen/pen/akWPJd