在这里,我试图通过html表格存储医生给出的药物。 通过在动态表的单元格中将输入作为文本,我想通过使用javascript将一些计数器附加到输入单元格的名称标签但是无法这样做。我想创建一个新的输入标签,其attr名称为prsc + counter -值 所以,请你帮助我
<table id="myTable">
<tr>
<td><input type="text" name="prsc0"></td>
</tr>
<tr>
<td><input type="text" name="prsc1"></td>
</tr>
<tr>
<td><input type="text" name="prsc2"></td>
</tr>
<button onclick="myCreateFunction()">Create row</button>
<button onclick="myDeleteFunction()">Delete row</button>
<script>
var counter=3;
function myCreateFunction() {
var table = document.getElementById("myTable");
var row = table.insertRow(0);
var cell1 = row.insertCell(0);
counter=counter+1;
var presc="prsc"+""+counter;
cell1.innerHTML = '<input type="text" name=presc>';
}
function myDeleteFunction() {
document.getElementById("myTable").deleteRow(0);
}
</script>
答案 0 :(得分:0)
您的presc
是一个变量:
cell1.innerHTML = '<input type="text" name="' + presc + '">';
或不创建它:
cell1.innerHTML = '<input type="text" name="presc' + counter + '">';
答案 1 :(得分:0)
使用DOM API创建输入元素,而不是构建HTML字符串:
var input = document.createElement('input');
input.name = 'prsc' + counter;
cell1.appendChild(input);
答案 2 :(得分:0)
function counter (){
for(i=0; i<document.querySelectorAll('input').length; i++){
document.querySelectorAll('input')[i].name=`prsc${i}`;
}
}