前回bootstrapで作成した入力欄をjavascriptで追加作成するコードを作成し、入力欄は作成できる様になったのですが、次のステップとしてラベルも入力欄と同時に追加したいのですが、上手く表示ができません。具体的には以下の画像の様にラベルが表示されてしまいます。
HTML側で、form_area、label, inputarea, input等、複数の要素が入れ子になっているますが、それらの関係性を保ちながらappendChildする方法を教えてください。以下が希望している表示結果です。
現在のコードは以下の通りです
HTML
1<div id="form_area" class="form-group"> 2<label for="input" class="col-sm-2 col-form-label"> <p>Steps</p></label> 3<div id="inputarea" class="col-sm-11"> 4<input type="text" class="form-control" id="input" name="procedure"> 5</div> 6</div> 7<input type="button" class="btn btn-info" value="追加" onclick="addForm()">
javascript
1function addForm() { 2 var div = document.createElement('div'); 3 div.className = 'form-group row'; 4 5 var label = document.createElement('label'); 6 label.className = 'col-sm-2 col-form-label'; 7 label.id = 'labelID'; 8 label.innerHTML = 'Steps'; 9 10 11 var input_data = document.createElement('input'); 12 input_data.type = 'text'; 13 input_data.className ='form-control'; 14 input_data.name ='procedure'; 15 16 var parent = document.getElementById('inputarea'); 17 var outerParent = document.getElementById('form_area'); 18 19 20 outerParent.appendChild(label); 21 parent.appendChild(input_data); 22 23}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/05 10:23