通过检查单选按钮从mysql获取数据

时间:2019-06-12 12:46:16

标签: php jquery ajax

我的产品型号很少,当我单击每种型号向我展示他的型号时,就像下面的图片一样

i

这是我用html制作的:

     <div class="owl-carousel owl-theme no-pb slide-arrow-2" data- 
        dots="false" data-nav="true" data-items="4" data-lg-items="3" 
         data-md-items="2" data-sm-items="2" data-margin="30" data- 
         autoplay="false">
            <?php 
              $qua = "SELECT * FROM produse WHERE categorie = '$id' ORDER BY pozitie";
              $qla = mysqli_query($conn, $qua);
              while($rova = mysqli_fetch_assoc($qla)){?> 
                <?php 
                    $id_paletar = $rova['id'];
                    $sql2=mysqli_query($conn,"SELECT * FROM pret_produse WHERE produs_id='$id_paletar'");
                    $pret2=mysqli_fetch_array($sql2);
                 ?>
               <div class="item">
                  <div class="product-item">
                     <div class="product-img">
                        <img class="img-fluid" src="cms/produse/<?=$rova['poza'];?>" alt="">
                        <div class="product-overlay">
                           <ul class="list-unstyled">
                           </ul>
                        </div>
                     </div>
                     <div class="product-btn ifix">
                        <div class="btn btn-theme btn-block btn-new" ><span style="font-size: 15px;"><?=$rova['titlu'];?></span>
                            <div>
                            <label class="containere">
                              <input type="radio" name="produse" id="paletar_pret" class="palt" value="<?=$rova['id'];?>">
                              <p class="checkmark"></span>
                            </label>
                        </div>
                        </div>
                     </div>
                  </div>
               </div>
            <?php }?>
        </div>

这是我的jquery:

$(document).ready(function(){

  $('.palt').change(function() {
      if(this.checked) {
        var check= $(this).val();
        alert(check);
          $.ajax({
                url: 'cere_cotatie.php',
                type: 'POST',
                data: {check:check},
                success: function(data){
                    $('.fetch').append(data);
                }
            });
      }
  });

这是我在ajax上调用的php文件:

  <?php
  if($_POST)
 {
       include('config.php');

   echo $check = $_POST['check'];
   $s = "SELECT * FROM variante WHERE id_var='$check'"; 
   $q = mysqli_query($conn, $s);
   while ($r = mysqli_fetch_assoc($q)) {?>
     <div class="item" style="width:220px;">
          <div class="product-item">
             <div class="product-img">
                <img class="img-fluid" src="cms/variante/<?=$r['poza'];?>" alt="">
                <div class="product-overlay">
                   <ul class="list-unstyled">
                   </ul>
                </div>
             </div>
             <div class="product-btn ifix">
                <div class="btn btn-theme btn-block btn-new" ><span style="font-size: 15px;"> <?=$r['denumire'];?></span>  
                  <div>
                        <label class="containere">
                          <input type="checkbox">
                          <p class="checkmark"></span>
                        </label>
                  </div>

                </div>
             </div>
          </div>
       </div>
  <?php }?>

   <?php }
  ?>

我的问题是这样的,如果我选中第一个框以显示我所检查内容的变体,但是我的代码正在执行这种方式,如果我选中第一个框正在加载数据,之后再选中第一个框需要的另一个框结果消失,只是我所检查的。 编辑:在该打印屏幕中,您可以看到问题。

1 个答案:

答案 0 :(得分:-1)

我认为您应该添加以下代码

$('.palt').change(function(e) {
   e.preventDefault();
});

并删除alert(check);

希望它对您有用。