PHP MySQL では、動的に作成された入力行フィールドにデフォルトの POST 値を追加します。
P粉409742142
2023-07-30 10:10:35
<p>テーブルと統合された小さな HTML フォームを開発しています。このテーブルには、現在の日付がデフォルト値として表示される「name」という入力フィールドがあります。これは最初の行に最適です。ただし、行を動的に追加すると、新しい入力フィールドにデフォルトの日付値が表示されません。現在のコード設定は次のとおりです: </p>
<pre class="brush:html;toolbar:false;"><html>
<本体>
<テーブルクラス="テーブルテーブルボーダー">
<thead class="table-success" style="background-color: #3fbbc0;">
<tr>
<th width="15%"><center>サービス</th>
<th width="5%"></th>
<th>
<button type="button" class="btn btn-sm btn-success" onclick="BtnAdd()">項目を追加</button>
</th>
</tr>
</頭>
<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>
</テーブル>
<スクリプトタイプ="text/javascript">
// テーブルに動的行を追加するスクリプト
関数 BtnAdd() {
var v = $("#TRow").clone().appendTo("#TBody");
$(v).find("input").val('');
$(v).find("input").autocomplete({ ソース: 'backend-script.php' });
$(v).removeClass("d-none");
$(v).find("th").first().html($('#TBody tr').length - 1);
}
関数 BtnDel(v) {
$(v).parent().parent().remove();
$("#TBody").find("tr").each(function(index) {
$(this).find("th").first().html(index);
});
}
</スクリプト>
</ボディ>
</html>
</pre>
<p>これらの動的に作成されたフィールドに現在の日付をデフォルト値として表示する方法についてのガイダンスが必要です。私の研究プロジェクトにご協力いただき、誠にありがとうございました。 </p>
問題は、新しい行を動的に作成するときに、入力フィールドの値を空の文字列に設定していることのようです。そのため、新しい行には現在の日付が表示されません。
BtnAdd() 関数を変更して、新しい入力フィールドの値を現在の日付に設定できます。次のように JavaScript で現在の日付を取得できます:
new Date().toISOString().split('T')[0]
.見てみましょう:
リーリー