追加在 PHP 生成的特定行 ID 之前

append before a specific row id generated by PHP

本文关键字:ID 之前 PHP 追加      更新时间:2023-09-26

>我使用 PHP 和 MySQL 在我的页面中生成了多行,我有一个简单的表单可以帮助我向数据库添加更多行。我确切想要的是,我必须在具有特定 id 的特定行之前添加一行:

foreach($resInst as $installment){
$sum = $sum + $installment['payment'];
?>
<tr id="<?php echo $installment['infoid'] ?>"><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>
<td><?php echo $counter--; ?></td>
<td><?php echo $installment['date_now'] ?></td>
<td><?php echo $installment['payment'] ?> $</td></tr>                     
</tr>
<?php } ?>

以下是AJAX脚本:

$(document).on('click', '#add_payment', function()
{
  var date_of_pay = $("#date_pay_now").val();
  var pay_now = $("#pay_now").val();
  //var id_pay = $(this).closest('tr').attr('id');
  var id_pay = $("#select_to_pay").val();
  var pid2 = '<?php echo $patient_id ?>';
  console.log(pid2);
  if(date_of_pay == "" || pay_now == "" || id_pay)
  {
    $("#date_pay_now").css('border-color', 'red');
    $("#pay_now").css('border-color', 'red');
    $("#select_to_pay").css('border-color', 'red');
  }
  if(date_of_pay != "" && pay_now != "" && id_pay != 0)
  {
    $.ajax
    ({
      url: 'add_payment.php',
      type: 'post',
      data: {pid: pid2, date_o_pay: date_of_pay, pay_n: pay_now, id_of_proj: id_pay},
      dataType: 'text',
      success:function(result)
      {
        alert("Payment added!");
        //Append here
      },
      error:function(result)
      {
        alert("Payment didn't added! Please Try again");
      }
    });
  }
});

我的意思是,当我将具有相同infoid的信息添加到数据库中时,我需要在具有相同$installment['infoid']<tr>之前附加此新行。

对我来说,问题是如何在jQuery中放置一个条件,上面写着:

if row of the id == id_pay ==> append before this line exactly

喜欢这个:

success:function(result)
      {
        alert("Payment added!");
        if($("tr").prop('id') == id_pay)
        {
          $(this).before("<tr><td>"+id_pay+"</td></tr>");
        }
      },

像这样的东西?

$('#'+id_pay).prev().after( put_your_inner_html_here )

虽然,如果你的行是第一行,这可能会很有趣......但应该仍然可以,因为 prev() 将是 tbody