recherche

Maison  >  Questions et réponses  >  le corps du texte

Dans PHP MySQL, ajoutez les valeurs POST par défaut aux champs de ligne d'entrée créés dynamiquement.

<p>Je développe un petit formulaire HTML intégré à un tableau. Le tableau comporte un champ de saisie appelé « nom » qui affiche la date actuelle comme valeur par défaut. Cela fonctionne très bien pour la première rangée. Cependant, lorsque j'ajoute dynamiquement des lignes supplémentaires, les nouveaux champs de saisie n'affichent pas la valeur de date par défaut. Voici ma configuration de code actuelle : </p> <pre class="brush:html;toolbar:false;"><html> <corps> <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()">Ajouter un élément</button> ≪/th> ≪/tr> ≪/tête> <tbody id="TBody"> <tr id="TRow" class="d-none"> <td><input type="text" name="nom[]" id="nom" value="<?php echo date("Y-m-d"); ?>"></td> <td class="NoPrint"> <button type="bouton" class="btn btn-success" style="line-height: 1;" onclick="BtnDel(this)">x</button> </td> ≪/tr> </tcorps> </tableau> <script type="text/javascript"> // Script pour ajouter des lignes dynamiques dans le tableau fonction 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); } fonction BtnDel(v) { $(v).parent().parent().remove(); $("#TBody").find("tr").each(function(index) { $(this).find("th").first().html(index); }); } </script> </corps> </html> ≪/pré> <p>J'ai besoin de conseils pour que ces champs créés dynamiquement affichent également la date actuelle comme valeur par défaut. Merci beaucoup pour votre aide dans mon projet d'études. </p>
P粉409742142P粉409742142489 Il y a quelques jours416

répondre à tous(1)je répondrai

  • P粉352408038

    P粉3524080382023-07-31 00:12:09

    Le problème semble être que lors de la création dynamique de nouvelles lignes, vous définissez la valeur du champ de saisie sur une chaîne vide. C'est pourquoi la nouvelle ligne n'affiche pas la date actuelle.

    Vous pouvez modifier la fonction BtnAdd() pour définir la valeur du nouveau champ de saisie à la date actuelle. Vous pouvez obtenir la date actuelle en JavaScript comme ceci :

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

    Jetez un oeil :

    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);
    } 

    répondre
    0
  • Annulerrépondre