Je voudrais ajouter une nouvelle ligne de 5 balises d'entrée à l'élément <td>
, qui est un enfant de <tr class="unit">
, et qui est un petit-fils de <table id="myTable">
élément.Insérer une nouvelle ligne de tags d'entrée en utilisant JavaScript
Dans mon code Javascript, j'étais capable de consigner par console les 5 balises d'entrée, mais je n'ai pas pu les ajouter à l'élément <td>
et au reste des éléments parents.
Mon code est-il sur la bonne voie pour résoudre ce problème?
Voici un lien vers la ce que je fais http://codepen.io/johnnyginbound/pen/xZxZNo?editors=101
function addRow(){
var parentTable = document.getElementById('myTable');
var tableRow = document.getElementsByTagName('tr')[0].children;
var unitTables = document.getElementsByClassName('unit-table')[0];
var newInputType = document.createElement('input');
newInputType.setAttribute('type', 'text');
for(var i=0; i<unitTables.children.length; i++){
var appendedInput = unitTables.children[i].appendChild(newInputType)
parentTable.appendChild(appendedInput);
}
}
document.getElementById('add_btn').onclick=addRow;
<form>
<div class="panel panel-default">
<!-- Default panel contents -->
<div class="panel-heading">Panel heading</div>
<div class="panel-body">
<p> ASME Email: </p>
<input type="text" name="email">
<br />
<br />
</div>
<!-- Table -->
<table id="myTable" class="table">
<tr>
<th> Technology </th>
<th> Markets </th>
<th> Enduring/Emerging </th>
<th> ASME Relevency </th>
<th> Comments </th>
</tr>
<tr class="unit-table">
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
</tr>
<tr class="unit-table">
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
</tr>
<tr class="unit-table">
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
<td>
<input type="text">
</td>
</tr>
</table>
</div>
<button id="add_btn">Add new row</button>
<input type="submit" name="submit" value="Submit">
</form>
merci pour votre réponse- est-il une raison pour laquelle quand je clique pour exécuter la fonction, il ajoute momentanément la nouvelle ligne d'entrées puis disparaît? –
Oui, dans ma réponse est la raison (formulaire de rafraîchissement) – caballerog
Ajouter un paramètre type = "bouton" pour le contrôle de bouton, caballerog - votre code de yeefer créer de nombreuses entrées comme beaucoup de lignes, dans votre "for" doit par nombre d'entrées (5) pas de nombre de lignes dans le tableau. –