当前位置: 首页 > 面试题库 >

如何使用AJAX对选择选项进行PHP查询?

吉和同
2023-03-14
问题内容

好的,我知道这已经得到了回答(使用Ajax或JavaScript选择下拉列表选项后,在同一页面上执行PHP脚本),但是对于以前从未使用过AJAX的人来说,答案并不是很有帮助。如果有人从下拉列表中选择一个选项,如何运行类似创建的查询?

<head>
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>

<h3>Subject</h3>
<select name="allbooks" >
              <option value="none" ></option>
              <option value="allbooks" >All Books</option>
    </select>

<?php 
$query = "SELECT * FROM books" or die("Error in the consult.." . mysqli_error($connection)); 
    $books = $connection->query($query);
?>

问题答案:

首先,您必须使用Javascript触发AJAX请求。但是,我将通过使用jQuery(一个Javascript库)指导您。

您的HTML:

<select name="allbooks" id="allbooks">
  <option value="none" ></option>
  <option value="allbooks" >All Books</option>
</select>
<div id="show">
  <!-- ITEMS TO BE DISPLAYED HERE -->
</div>

之后,下载jQuery。

然后执行脚本:

<script src="jquery-1.9.1.min.js"></script> <!-- CHANGE THE JQUERY FILE DEPENDING ON THE VERSION YOU HAVE DOWNLOADED -->
<script type="text/javascript">
  $(document).ready(function(){ /* PREPARE THE SCRIPT */
    $("#allbooks").change(function(){ /* WHEN YOU CHANGE AND SELECT FROM THE SELECT FIELD */
      var allbooks = $(this).val(); /* GET THE VALUE OF THE SELECTED DATA */
      var dataString = "allbooks="+allbooks; /* STORE THAT TO A DATA STRING */

      $.ajax({ /* THEN THE AJAX CALL */
        type: "POST", /* TYPE OF METHOD TO USE TO PASS THE DATA */
        url: "get-data.php", /* PAGE WHERE WE WILL PASS THE DATA */
        data: dataString, /* THE DATA WE WILL BE PASSING */
        success: function(result){ /* GET THE TO BE RETURNED DATA */
          $("#show").html(result); /* THE RETURNED DATA WILL BE SHOWN IN THIS DIV */
        }
      });

    });
  });
</script>

然后让我们创建get-data.php,它将接收通过AJAX发送的数据

if(!empty($_POST["allbooks"])){
  /* DO YOUR QUERY HERE AND GET THE OUTPUT YOU WANT */
  echo $output; /* PRINT THE OUTPUT YOU WANT, IT WILL BE RETURNED TO THE ORIGINAL PAGE */
}

您可以查看此示例JSfiddle。



 类似资料:
  • 我在一页上有多个选择。我需要全部检查,并检查是否选择了一个选项。 所以基本上我需要一些jquery/js来实现:如果每个select都选择了一个选项,那么。。。其他的 现在我有" 问题是:这段代码只检查页面上的第一个select,我需要全部检查! 有人能帮忙吗?

  • 问题内容: 好吧,标题说明了一切。我正在做的是创建一个特色产品模块。使用JSON填充尺寸的下拉列表,并且我使用把手来呈现html。我无法控制JSON文件。我尝试通过选项标签中的实际文本对选项值进行排序,但后来我意识到选项值是错误的。因此,现在我尝试按其值属性对选项进行排序,但尚未弄清楚。我正在尝试做这样的事情: 这是HTML: 问题答案: 在这里,您可以找到一个演示并将结果与​​原始结果进行比较:

  • 我有一个简单的使用Ajax从json文件动态生成的select选项,但我没有做到的是在提交表单后将以前选择的选项保持为选中状态。用发送到JS的PHP变量尝试了这一点,但我找不到在脚本标记中使用PHP代码的方法,并且用PHP重复所有内容都很难看。有什么想法吗? 我的PHP AJAX代码: 我的JSON文件:

  • 我想调用一个函数时,选择的任何选项。类似于这样: 但不知何故不起作用。有人能帮忙吗。 请注意 我不想捕获更改事件,如果我选择已经选择选项,则不会触发更改事件

  • 我有一些连接的选择工作良好。顺便说一句,我想把这些选择转换成很小的选择,但我发现这样做有些困难。例如,我有一个ID为的select。当我选择的一个大于零的选项时,应该会出现其他选择。之后,当我更改级联选择的选项(例如在中)时,该选项会正确更改。但是,当我选择另一次时,中的选项zero和我选择另一次时,中大于zero的选项会出现,而另一次选择中已经选择了选项。 这是我的javascript代码: 这