在PHP MySQL中,将默认的POST值添加到动态创建的输入行字段中。
P粉409742142
P粉409742142 2023-07-30 10:10:35
[PHP讨论组]

我正在开发一个与表格集成的小型HTML表单。表格中有一个名为"name"的输入字段,它将当前日期作为默认值显示出来。这对于第一行来说效果很好。然而,当我动态添加更多行时,新的输入字段不会显示默认的日期值。以下是我的当前代码设置:

<html>
  <body>
    <table class="table table-bordered">
      <thead class="table-success" style="background-color: #3fbbc0;">
        <tr>
          <th width="15%"><center>Service</th>
          <th width="5%"></th>
          <th>
            <button type="button" class="btn btn-sm btn-success" onclick="BtnAdd()">Add Item</button>
          </th>
        </tr>
      </thead>
      <tbody id="TBody">
        <tr id="TRow" class="d-none">
          <td><input type="text" name="name[]" id="name" value="<?php echo date("Y-m-d"); ?>"></td>
          <td class="NoPrint">
            <button type="button" class="btn btn-success" style="line-height: 1;" onclick="BtnDel(this)">x</button>
          </td>
        </tr>
      </tbody>
    </table>

    <script type="text/javascript">
      // Script to add dynamic rows in the table
      function BtnAdd() {
        var v = $("#TRow").clone().appendTo("#TBody");
        $(v).find("input").val('');
        $(v).find("input").autocomplete({ source: 'backend-script.php' });
        $(v).removeClass("d-none");
        $(v).find("th").first().html($('#TBody tr').length - 1);
      }
      function BtnDel(v) {
        $(v).parent().parent().remove();
        $("#TBody").find("tr").each(function(index) {
          $(this).find("th").first().html(index);
        });
      }
    </script>
  </body>
</html>

我需要一些关于如何使这些动态创建的字段也显示当前日期作为它们的默认值的指导。非常感谢您对我的学习项目提供帮助。

P粉409742142
P粉409742142

全部回复(1)
P粉352408038

问题似乎是在动态创建新行时,您将输入字段的值设置为空字符串。这就是为什么新行不显示当前日期的原因。

您可以修改BtnAdd()函数,将新输入字段的值设置为当前日期。您可以在JavaScript中这样获取当前日期:

new Date().toISOString().split('T')[0].

Take a look:

function BtnAdd() {
  /*Add Button*/
  var v = $("#TRow").clone().appendTo("#TBody") ;
  var currentDate = new Date().toISOString().split('T')[0]; // Get the current date
  $(v).find("input").val(currentDate); // Set the value of the new input field to the current date
  $(v).find("input").autocomplete({ source: 'backend-script.php' });
  $(v).removeClass("d-none");
  $(v).find("th").first().html($('#TBody tr').length - 1);
} 
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号