2014-03-01 17 views
0

之前,我问我的问题,我会说出一些工具我使用:带有typeahead处理程序的多个文本字段不执行AJAX调用?

我只有一个文本框可以很好地运行。但是,当我添加另一个文本字段并尝试将打印头处理程序连接到第二个文本字段时,第二个打印机未能执行AJAX调用,并且正在试图找出问题所在。

HTML代码:

<div id = "tester" class="well"> 
<input id = "test" class="typeahead" type="text" placeholder="Search" data-provide="typeahead" autocomplete="off" spellcheck="false" dir="auto" style="position: relative; vertical-align: top;"> 
</div> 

<div id = "tester2" class="well"> 
<input id = "test2" class="typeahead" type="text" placeholder="Search" data-provide="typeahead" autocomplete="off" spellcheck="false" dir="auto" style="position: relative; vertical-align: top;"> 
</div> 

的Javascript:

<script src="assets/js/jquery-1.11.0.js"></script> 
<script src="assets/js/bootstrap.js"></script> 

<script> 

$(function(){ 
$('.typeahead').typeahead({ 
    source: function(typeahead, query){ 
     $.ajax({ 
      url: 'my_controller', 
      type: 'POST', 
      data: 'query=' + query, 
      dataType: 'JSON', 
      async: true, 
      success: function(data){ 
       typeahead.process(data); 
      } 

     }); 
    } 
}); 
}); 

</script> 

的AJAX调用失败,甚至与在作为第一个正常工作的第二个预输入执行。我不知道我错过了什么。我甚至通过类名来选择输入。

我将不胜感激任何帮助或指导。

这里是一个的jsfiddle:http://jsfiddle.net/pK6g5/

谢谢。

+0

当您拨打第二个电话来预输入,有没有在控制台中的任何错误。 – dreamweiver

+0

嘿,感谢您的评论。不,控制台中没有错误。 – user3368483

+0

你可以创建一个jsfiddle,http://jsfiddle.net – dreamweiver

回答

1

您的“修改后的bootstrap-typeahead.js”库使用$.browser,它自1.9开始就不在jQuery中。要保留它,您可以添加Jquery Migrate

我刚添加的库到你的小提琴,它似乎工作:FIDDLE

+0

非常感谢!奇迹般有效。 – user3368483