簡體   English   中英

使用AJAX將兩個下拉列表的選定值發送到PHP腳本而不提交

[英]Send selected value of two dropdown to PHP script without Submit using AJAX

我有兩個下拉列表,我想知道在這些下拉列表中選擇了哪個用戶,因為我需要使用PHP從數據庫中獲取數據。 請注意,沒有提交按鈕。 我不知道如何將javascript var值發送到PHP代碼。

這是我到目前為止所做的

 <head>

<script src="http://code.jquery.com/jquery-latest.min.js"></script>

<script>

    $(document).ready(function(){   
        $('select.day').on('change',function(){     
        var select = $(this).val();         
        alert(select);          

        });

        $.ajax({

            Type : "POST",              
            url : "new.php",
            data : {name : select},     
            success : function(msg)
            {
                $('#d').text(msg);      
                alert(msg);
            }   
        }); 
    });

</script>
</head>
   <body>
<p id="d"></p>
<Select class="day" onchange="getTimeFrame(this.value)">
        <Option >Today</Option>
        <Option>This Week</Option>
    <Option>Last Week</Option> 
    </Select>

    <Select class="filter" onchange="getFilterType(this.value)">
        <Option >User</Option>
        <Option>Client</Option>
    <Option>Project</Option>
    </Select>
</body>
</html>

這是PHP文件

<?php

    // $time = $_POST['select'];         
     $filter = $_POST['name'];     
     //echo "Hello from new";      
     echo $filter;

?>

但是似乎沒有什么對我有用。 有人知道如何實現這一目標嗎?

在select的onchange事件中添加您的Ajax代碼。

更新

拼寫錯誤更改type而不是Type ,不是大寫。全部為小寫字母。JavaScript區分大小寫

$('select.day').on('change', function() {
    var select = $(this).val();
  $.ajax({
    type: "POST",
    url: "new.php",
    data: {
      name: select
    },
    success: function(msg) {
      $('#d').text(msg);
      alert(msg);
    }
  });
  })

像這樣更改HTML

<Select class="day">
        <Option >Today</Option>
        <Option>This Week</Option>
    <Option>Last Week</Option> 
    </Select>

對於發送兩個下拉值,請嘗試此

 $('select.day').on('change', function() { var select = $('select.day').map(function(){ return $(this).val() }).get(); console.log(select) $.ajax({ type: "POST", url: "new.php", data: { name: select }, success: function(msg) { $('#d').text(msg); alert(msg); } }); }) 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <Select class="day" > <Option >Today</Option> <Option>This Week</Option> <Option>Last Week</Option> </Select> <Select class="day filter" > <Option >User</Option> <Option>Client</Option> <Option>Project</Option> </Select> 

在您的onchange事件中,您只能使用select = $(this)...更改后的選擇框的值。 您還必須使用Name = $(“。filter”).....引用另一個,然后使用ajax發送它

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM