Bootstrap 3和Typeahead.js问题

I'm having a problem with bootstrap 3 and typeahead.js from github https://github.com/twitter/typeahead.js/blob/master/doc/jquery_typeahead.md#datasets

I'm trying to get my data from ajax to appear to suggest to a user when he types in my input field.

My console keeps giving me a message that says "Uncaught TypeError: Cannot read property 'replace' of undefined "

any help?

 <html>
 <head>

 <!-- Bootstrap framework -->
  <link rel="stylesheet" href="../bootstrap/css/bootstrap.min.css" />

</head>

<body>

 <div class="well">
  <input type="text" class="span3 typeahead form-control" id="players" data-provide="typeahead">
 </div>



<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
 <!-- main bootstrap js -->
  <script src="../bootstrap/js/bootstrap.min.js"></script>
 <!-- bootstrap plugins -->
 <script src="../js/bootstrap.plugins.min.js"></script>
 <!-- typeahead-->
 <script src="../lib/typeahead/typeahead.min.js"></script>

<script type="text/javascript">

  $(function(){

$('#players').typeahead({


  name: 'players',
  remote: function(query, cb){

       $.ajax({

      url: 'ajax/search.php',
      type: 'POST',
      data: 'query='+query,
      dataType: 'JSON',
      async: true,
      success: function(data){

        cb(data);
         }

        })
  }

})

 });

  </script>

Ajax data file (PHP):

 <?

if(isset($_POST['query'])){

  include 'connect.php';

  $query = $_POST['query'];

  $sql = mysql_query("SELECT * FROM players WHERE name LIKE '%{$query}%'");

  $array = array();

  while($row = mysql_fetch_assoc($sql)){

   $array[] = $row['name'];

  }

  echo json_encode($array);

 }



 ?>

1个回答

not 100% sure this is the issue, but perhaps try changing

data: 'query='+query,

to

data: {"query" : query},

I was having this issue and it fixed my problem

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐