AJAX、JQuery Ud/PHP:未显示POST方法自动完成

AJAX、JQuery Ud/PHP:未显示POST方法自动完成,php,ajax,jquery-ui,autocomplete,jquery-ui-autocomplete,Php,Ajax,Jquery Ui,Autocomplete,Jquery Ui Autocomplete,我目前正在创建一个Wordpress模板,其中包含一个“自动完成”功能init,下面的代码就是这个功能。目前我的自动完成功能不起作用,没有显示任何内容。检查系统,它正在给我 Uncaught ReferenceError: request is not defined 我最近有一个自动完成功能,但它无法使用自动完成功能键盘向上、向下和输入功能。它可以使用鼠标,但不能使用键盘功能。它在wordpress模板上,现在正由鼠标控制。另一个关键因素是它是“POST”而不是“GET”。另一个关键因素是

我目前正在创建一个Wordpress模板,其中包含一个“自动完成”功能init,下面的代码就是这个功能。目前我的自动完成功能不起作用,没有显示任何内容。检查系统,它正在给我

 Uncaught ReferenceError: request is not defined
我最近有一个自动完成功能,但它无法使用自动完成功能键盘向上、向下和输入功能。它可以使用鼠标,但不能使用键盘功能。它在wordpress模板上,现在正由鼠标控制。另一个关键因素是它是“POST”而不是“GET”。另一个关键因素是,我有一个隐藏的输入字段,该id称为“搜索id”。“搜索id”的隐藏输入字段将与id一起更新并发送到服务器,而“搜索框”输入字段只向用户显示完整的描述,但如果我们发送的值只是id,我可能不需要它。可以在HTML和PHP中看到。。。请帮助解释为什么我的自动完成功能不起作用

jqueryui/AJAX

    <script>
        $(document).ready(function(){
            $("#search-box").autocomplete({
                minLength: 2,
                source: function(request, response){
                    $.ajax({
                        type: "POST",
                        url: "autocomplete.php",
                        data:'keyword=' + req.term,
                        success: response,
                        dataType: 'json',
                        minLength: 2,
                        delay: 100

                    });
                },
                select: function(event, ui){
                    $("#search-box").val(ui.item.label);
                    $("#search-id").val(ui.item.value);
                    return false;
                }
            });
        });
        /* function selectCountry(val) {
          $("#search-id").val(val);
          $("#suggesstion-box").hide();
        }
        function updateSearchBox(el) {
          $("#search-box").val($(el).html());   
        } */
    </script>

$(文档).ready(函数(){
$(“#搜索框”)。自动完成({
最小长度:2,
来源:功能(请求、响应){
$.ajax({
类型:“POST”,
url:“autocomplete.php”,
数据:'keyword='+req.term,
成功:回应,
数据类型:“json”,
最小长度:2,
延误:100
});
},
选择:功能(事件、用户界面){
$(“#搜索框”).val(ui.item.label);
$(“#搜索id”).val(ui.item.value);
返回false;
}
});
});
/*功能选择国家/地区(val){
$(“#搜索id”).val(val);
$(“#建议框”).hide();
}
函数更新搜索框(el){
$(“#搜索框”).val($(el.html());
} */
HTML



算出了。。。。下面是我的答案

JQuery用户界面

<script>
$(document).ready(function(){
        $("#search-box").autocomplete({
        minLength: 2,
        source: function(request, response){
            $.ajax({
                type: "POST",
                url: "autocomplete.php",
                dataType: "json",
                data:'keyword=' + request.term,
                success: function(data){
                    response(data);
                }
            });
        },
        select: function(event, ui){
            $("#search-box").val(ui.item.label);
            $("#search-id").val(ui.item.value);
            return false;
        }
    });
});
</script>

$(文档).ready(函数(){
$(“#搜索框”)。自动完成({
最小长度:2,
来源:功能(请求、响应){
$.ajax({
类型:“POST”,
url:“autocomplete.php”,
数据类型:“json”,
数据:'keyword='+request.term,
成功:功能(数据){
答复(数据);
}
});
},
选择:功能(事件、用户界面){
$(“#搜索框”).val(ui.item.label);
$(“#搜索id”).val(ui.item.value);
返回false;
}
});
});
HTML


<?php
include_once "functions.php";

     if(isset($_POST['keyword']))
    {
        $database = lookup_connectToDatabase();                     
        $result = pg_query($database, "SELECT country, id, state FROM customers WHERE country iLIKE '" . $_POST["keyword"] . "%' OR id iLIKE '" . $_POST["keyword"] . "%' ORDER BY country");

        if (!$result){
                echo "<div class='show' align='left'>No matching records.</div>";
        }else {

            while($row=pg_fetch_assoc($result)){

                $array[] = array(
                    'label' = $row['id'].': '.$row['country'].', '.$row['state'],
                    'value' = $row['id'],
                );

            } 
            echo json_encode ($array);
        }
    }                                                   
?>
<script>
$(document).ready(function(){
        $("#search-box").autocomplete({
        minLength: 2,
        source: function(request, response){
            $.ajax({
                type: "POST",
                url: "autocomplete.php",
                dataType: "json",
                data:'keyword=' + request.term,
                success: function(data){
                    response(data);
                }
            });
        },
        select: function(event, ui){
            $("#search-box").val(ui.item.label);
            $("#search-id").val(ui.item.value);
            return false;
        }
    });
});
</script>
<form role="search" name="remarks_lookup" id="myForm" method="post" class="search-form" action="/VCSWeb/remarks-look-up/" >
    <div style="background-color:#ffffff; width:100%; float:left;  padding-bottom:25px; clear:both;  ">
        <div class="frmSearch " style="width:80%; float:left;"   >
            <label>                                         
                <input   size="59" maxlength="75" type="search" name="jurisdiction_search"  class="search_keyword" id="search-box"  placeholder="Enter Jurisdiction, County, City, or Client Name"  />
                <input type="hidden" name="search" id="search-id"  /> 
            </label>
        </div>
        <div style="width:20%; float:left; clear:right;">
            <label>                                         
                <input class="search_button" style="width:100%; height: 50px;" type="submit"  value="<?php echo esc_attr_x( 'Search', 'submit button' ) ?>" />
            </label>
        </div>
    </div>
</form>
<?php
     if(isset($_POST['keyword']))
    {
        $database = lookup_connectToDatabase();                     
        $result = pg_query($database, "SELECT country, id, state FROM customers WHERE country iLIKE '" . $_POST["keyword"] . "%' OR id iLIKE '" . $_POST["keyword"] . "%' ORDER BY country");

        if (!$result){
                echo "<div class='show' align='left'>No matching records.</div>";
        }else {

            while($row=pg_fetch_array($result)){

                $array[] = array(
                    'label' => '('.$row['id'].') '.$row['country'].', '.$row['state'],
                    'id' => $row['country'].', '.$row['state'],
                    'value' => $row['id'],
                );

            } 
            echo json_encode ($array);
        }
    }                                                   
?>