【问题标题】:jquery autocomplete sends empty $_GET["term"]jquery 自动完成发送空 $_GET["term"]
【发布时间】:2014-12-26 03:11:21
【问题描述】:

我的查询很简单。我无法在我的 php 页面中获取从我的 Jquery 自动完成功能发送的选定值。我将进一步解释。首先,这是我的 html 页面中的代码。

<form action="http://localhost/SearchRes/" method="POST">
        <input type="text" name="searchbyvalue" id="a" class="a" placeholder="Type a letter to search"><br><br>
</form>

我的脚本如下所示:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
    <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" />
    <script type="text/javascript">
            $(document).ready(function(){
                $("#a").autocomplete({
                    source:'search.php',
                    minLength:1
                });
            });
 </script>

此外,我的 search.php 正在尝试使用 $_GET["term"] 接收在文本框中输入的字母,如下所示:

if (isset($_GET['term'])
{
  $return_arr = array('Generate Ideas', 'Define Products');
}
echo json_encode($return_arr);

但是,我的问题是 $_GET["term"] 从未设置。如果我删除“if”条件,代码就可以正常工作。我也尝试过使用 $_REQUEST["term"],但它也不起作用。我在这里做错了什么?请指教。

我正在尝试使用用户输入的字符搜索数据库。所以我必须进一步使用 $_GET["term"] 中的值来形成查询并搜索数据库。但是,由于从未在 php 文件中收到这些值,因此我的工作在这一点上停滞不前。

【问题讨论】:

  • 我认为这没关系,自动完成使用该术语。我只关心php路径。这工作codepad.viper-7.com/FagzOE唯一的区别是我的php路径是正确的document.URL(同一页面)只要确保你的PHP路径是正确的

标签: javascript php jquery mysql autocomplete


【解决方案1】:

请使用 ajax 向服务器发送参数。

 source: function( request, response ) {
               $.ajax({
                   type:"GET",
                   url : 'search.php?term='+$("#a").val(),
                   dataType: "json",
                   success: function( data ) {
                            response(data);
                   }
               });
          },

【讨论】:

    【解决方案2】:

    您的if 条件未正确写入:

    if (isset($_GET['term']) 应该是if (isset($_GET['term']))

    【讨论】:

      【解决方案3】:

      请检查您的 if 条件,您忘记使用右括号。

      if(isset($_GET['term'])) 
      {
        $return_arr = array('Generate Ideas', 'Define Products');
      }
      echo json_encode($return_arr);
      

      享受.......

      【讨论】:

        猜你喜欢
        • 2013-06-19
        • 2018-02-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多