PHP HTML 表单的多个id进入模态主体

PHP HTML multiple id of form into modal body

我有一个 table 显示用户提交的每张票的摘要。 table 的每一行都有一个“Charge Exp”按钮,它会打开一个模式,允许加载用户打开的每张票的费用。

<table id="ticketList" class="table table-striped table-hover">
    <thead>
      <!-- header fields -->
    </thead>
    <tbody>
      <?php
      if($numrows_ticket > 0 ) {
        if($numrows_ticket < $limit){
          $limit = $numrows_ticket;
        }
        for($i = $paginationStart; $i < ($paginationStart+$limit);$i++){
        ?>
      <tr>
        <td><?php echo $arr[$i]['jira_id'];?></td>
        <td><?php echo $arr[$i]['project'];?></td>
        <td><?php echo date_format(date_create($arr[$i]['data']), "d/m/y H:i");?></td>
        <td><?php echo $arr[$i]['id_user'];?></td>
        <td><?php echo "xXstatusXx";?></td>
        <td><button id="btnExp" class="btn btn-primary btn-sm" data-toggle="modal" data-target="#chargeExpenses"><?php echo "Charge Exp"?></button>
        <!-- Modal -->
        <div class="modal" id="chargeExpenses" tabindex="-1" role="dialog" aria-labelledby="expensesForm" aria-hidden="true">
          <div class="modal-dialog modal-lg" role="document">
            <div class="modal-content">
              <div class="modal-header"></div>
              <div class="modal-body">
                <?php include "load_expenses.php";?>
              </div>
              <div class="modal-footer">
                <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
              </div>
            </div>
          </div>
        </div>

当我将数据写入模态框的字段(不提交)时,如果我关闭会出现相同的内容,转到不同的行并打开一个新的模态框。当我提交时,table 的每一行都会提交多个表单。

load_expenses.php:

<?php error_log("counter load exp: ".$i);?>
<form action="xxx.php" method="post" id="exp_form-<?php echo $i?>" class="spellcheck exclusive save" name="dett2-<?php echo $i?>" enctype="multipart/form-data">

正如我所料,在日志中我有从 0 到 9 的 $i。然而,表单的 ID 和名称始终为 0。

出了什么问题,最好的解决方法是什么?

你只有一个模态,每当你向它添加一些东西时,它就会停留在那里,当你关闭模态时它就会隐藏起来。 可以有一些选项可以做到这一点,其中之一可以是您对每个模态使用不同的模态 ID,例如

 <div class="modal" id="chargeExpenses[$x]" tabindex="-1" role="dialog" aria-labelledby="expensesForm" aria-hidden="true">
          <div class="modal-dialog modal-lg" role="document">
            <div class="modal-content">
              <div class="modal-header"></div>
              <div class="modal-body">
                <?php include "load_expenses.php";?>
              </div>
              <div class="modal-footer">
                <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
              </div>
            </div>
          </div>
        </div>

当您打开模式时,只需传递您单击的行的 ID