首页 > 解决方案 > 使用 ajax 将值从一个 PHP 页面传递到另一个页面

问题描述

我已经捆绑了几个小时来获取每个按钮的值 value="oneyearanalysis" 和 value="oneyearanalysis",当我按下它们时,我尝试使用 ajax。我想我很接近,但我没有得到输出 GetData,但我在我的 console.log(clikYear);. 希望你能帮我

此致

索引.php

  <div class="container" style="margin-top: 50px;">
      <select  name="button" id="button">
        <option value="">Select...</option>
        <option value="oneyearanalysis">1 year analyse</option>
      <option value="fiveyearanalysis">5 year analyse</option>
  </select>
    </div>


$(document).ready(function(){ 
      $("#button").on("change",function() {
            var clikYear = $(this).val();
                  console.log(clikYear);
                  if (clikYear !== "") {
                    var getTableCall2 = $.ajax({
                      url : "GetData.php",
                      type:"POST",
                      cache:false,
                      data:{clikYear:clikYear},              
                    })
                  }
            });
            getTableCall2.done(function(data){
              console.log(data);
              console.log(getTableCall2);
              console.log(clikYear);
          })

获取数据.php

if(isset($_POST['clikYear']))
{
    $year= $_POST['clikYear'];
}
$yearOfChoice = $year;

标签: phpjqueryajax

解决方案


您的 Select 的 ID 是“按钮”,但您使用的是 Class Selector。尝试更换 . # 在按钮前面

HTML

<select id="button">
    <option value="">Select...</option>
    <option value="oneyearanalysis">1 year analyse</option>
    <option value="fiveyearanalysis">5 year analyse</option>
</select>

jQuery

$("#button").on("change", function () {
    var clikYear = $(this).val();
    console.log(clikYear);
    if (clikYear !== "") {
        $.ajax({
            url: "GetData.php",
            type: "POST",
            cache: false,
            data: { clikYear: clikYear },
        })
    }
});

推荐阅读