Почему это автозаполнение JQuery не работает? - PullRequest
0 голосов
/ 21 сентября 2011

У меня есть следующее в заголовке моей страницы

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript" src="javascript/autoSuggest.js"></script>
<script type="text/javascript" src="javascript/suggest.js"></script>

offer.js состоит из:

$(function(){

$("#idName input").autoSuggest("../Test.php", {minChars: 2, matchCase: true});
});

и autoSuggest.js - плагин от Drew Wilson (http://code.drewwilson.com/entry/autosuggest-jquery-plugin)

Test.php -

<?php
include('database_info.inc');
$input = $_POST["idName"];
$data = array();
var_dump($data);
// query database to see which entries match the input
$query = mysql_query("SELECT * FROM test WHERE title LIKE '%$input%'");
while ($row = mysql_fetch_assoc($query)) {
$json = array();
$json['value'] = $row['id'];
$json['name'] = $row['title'];
$data[] = $json;
}
header("Content-type: application/json");
echo json_encode($data);

?>

Мой var_dump () ничего не делает, и никакие элементы не предлагаются ... что я могу сделать неправильно? кажется, что нет связи с Test.php

1 Ответ

0 голосов
/ 21 сентября 2011

Беглый взгляд на плагин показывает, что он ожидает параметр с именем q, переданный как строка GET, а не как POST.

<?
    $input = $_GET["q"];
    $data = array();
    // query your DataBase here looking for a match to $input
    $query = mysql_query("SELECT * FROM my_table WHERE my_field LIKE '%$input%'");
    while ($row = mysql_fetch_assoc($query)) {
    $json = array();
    $json['value'] = $row['id'];
    $json['name'] = $row['username'];
    $json['image'] = $row['user_photo'];
    $data[] = $json;
    }
    header("Content-type: application/json");
    echo json_encode($data);
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...