Ajax Posting始终具有相同的价值

时间:2018-02-06 06:58:17

标签: php ajax

我正在处理按钮组,这些按钮组通过PHP回显来自数据库并需要通过Ajax发布值。这很快就会创建产品主要组,子组和产品。

这是创建和列出按钮的代码:

 echo '
<a class="altgrup_al">
<input type="hidden" name="data_id" id="data_id" value="1">
<input type="hidden" name="san_RECno" id="san_RECno" value="'.$san_RECno.'">
<button type="button" class="btn btn-mini btn-primary" style="margin-
left:5px; margin-bottom:5px; height:80px; width:80px; white-
space:normal;">'.$san_isim.'</button></a>';

这是发布的ajax代码:

<script>
$(document).ready(function(){ 
$(".altgrup_al").click(function(e){
    e.preventDefault(); 
  var deger = document.getElementById('data_id').value;
  var sth_fatura_no = document.getElementById('sth_fatura_no').value;
  var san_RECno = document.getElementById('san_RECno').value; 
  $.ajax({ 
    type: "POST", 
    url: "altgrup_al.php", 
    data: {deger:deger, sth_fatura_no:sth_fatura_no, san_RECno:san_RECno}, 
    success: function(result){ 
      $("#alt_tablo").html(result); 
    }
   });
    });
   });
  </script>

我也尝试了data-id属性,但是在任何ajax发布方式中,

var san_RECno = document.getElementById('san_RECno').value;

此值= 1。

但是当我列出按钮并显示san_RECno的值时,每个按钮都会显示自己的ID号。

我对JavaScript不够好所以我需要帮助,为什么总是张贴相同的(1)身份证号码。

感谢。

2 个答案:

答案 0 :(得分:2)

步骤1:使用动态ID创建隐藏文本框(如果您使用循环然后将其计数用同名(例如:id =“data_id + echo php variable”)并调用JS方法像

这样的参数
  

ONCLICK =“saveData($('#data_id + echo php variable).val()')”

第2步:

{{1}}

答案 1 :(得分:1)

创建和列出按钮的代码:

同时查找PHP Buttons inside loop

<?php
$inc = 1; //define a varible which increment in loop
loop_start{ //loop like while,for,foreach

echo '
<a class="altgrup_al" data-id="'.$inc.'">
<input type="hidden" name="data_id" id="data_id'.$inc.'" value="1">
<input type="hidden" name="san_RECno" id="san_RECno'.$inc.'" value="'.$san_RECno.'">
<button type="button" class="btn btn-mini btn-primary" style="margin-left:5px; margin-bottom:5px; height:80px; width:80px; white-space:normal;">'.$san_isim.'</button></a>'

$inc++;
}
?>

这是发布的ajax代码:

<script>
$(document).ready(function(){ 
    $(".altgrup_al").click(function(e){
          e.preventDefault(); 
          var id = $(this).data('id');
          var deger = $('#data_id'+id).val();
          var sth_fatura_no = $('#sth_fatura_no'+id).val();
          var san_RECno = $('#san_RECno'+id).val(); 
          $.ajax({ 
            type: "POST", 
            url: "altgrup_al.php", 
            data: {deger:deger, sth_fatura_no:sth_fatura_no, san_RECno:san_RECno}, 
            success: function(result){ 
              $("#alt_tablo").html(result); 
            }
           });
    });
});
</script>
  如果你已经有jquery库

,请使用jquery代替javascript for getting input value