我有两个下拉菜单,我需要同时获取两个值才能从数据库中获取数据。

$(document).ready(function(){

    $('.fabric').on('change',function(){
        var fabricID = $(this).val();
        console.log("fabric id_price is " + fabricID); //debugging
        if(fabricID){
           $.ajax({
                type:'GET',
                url:'cart_functions.php',
                dataType: 'json',
                data: {
                  fabric_id: fabricID
                },
                success:function(html){
                $('.icms' + id).text(data.val);


                }
            });
      //closing tags


    $('.size').on('change',function(){
        var sizeID = $(this).val();
        if(sizeID){
            $.ajax({
                type:'GET',
                url:'cart_functions.php',
                 dataType: 'json',
                data:{
                  size_id: sizeID
                },
                success:function(html){
                    $('.icms' + id).text(data.val);
                }
            });

//closing tags


我将这两个值发送到我的calculate.php

<?php header('Content-Type: application/json');

 include_once '../incluedes/conn_cms.php';
 if(isset($_GET["size_id"],$_GET["fabric_id"])){
    $size_id=$_GET["size_id"] ;
    $fabric_id=$_GET["fabric_id"] ;

 $query3 =" SELECT * FROM valores_almofadas
            WHERE size='$size_id'
            AND   price_id ='$fabric_id'";

        $result = mysqli_query($conn,$query3);
        while($rows = mysqli_fetch_assoc($result)){

            if($_SESSION['estado'] == 'SP'){
              $ICMS = $rows['icms_7'];
             }else{
              $ICMS = $rows['icms_12'];
             }
             $_SESSION['icms']=$ICMS;

        } echo json_encode($_SESSION['icms']);

}

?>


所以我选择一种面料,然后面料的尺码值是我的身份证,尺码是50或45。

fabricid = 1和大小= 50 所以我想找回会话的价值。
结果必须在td上。

<td class="icms'.$id.'">R$:'.$_SESSION['icms'] .'</td>


但是它不起作用,我不擅长Ajax,能否告诉我出什么问题了,我该如何解决这些问题?

最佳答案

确保两个值始终与请求一起发送

$(document).ready(function() {
    $('.fabric, .size').on('change', sendData);

    function sendData() {
        var fabricID = $('.fabric').val();
        var sizeID   = $('.size').val();

        if ( fabricID !== "" && sizeID !== "") {
            $.ajax({
                type     : 'GET',
                url      : 'cart_functions.php',
                dataType : 'json',
                data     : {
                    fabric_id: fabricID,
                    size_id: sizeID
                }
            }).done(function(html) {
                $('.icms' + this.id).text(data.val);
            });
        }
    }
});

关于php - 结合两个下拉选择以检索一个结果ajax/php,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39960315/

10-11 08:16
查看更多