为什么我的输入值没有出现PHPHTML
Why my input value does not appear PHP HTML
所以,我正在做一项学校作业,我必须制作一个最多有 10 个输入的计算器,有一个按钮可以添加更多输入,但由于某些原因,当我提交值时它不起作用,它仅显示页面中静态的前 2 个输入。
我认为问题与名称有关,但找不到
这是我现在正在做的事情:
<body>
<table id="table">
<tr id="adicionarcells">
<form id="form1" name="form1" action="romanos.php" method="post">
<td></td>
<td>
<input type="text" id="valor1" name="valor1" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
<select id="operador1" name="operador1">
<option value="value1" selected>+</option>
<option value="value2">-</option>
<option value="value3">*</option>
<option value="value4">/</option>
</select>
</td>
<td>
<input type="text" id="valor2" name="valor2" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
</td>
<td></td>
<td>
<input type="button" id="adiciona" value="+" style="width: 20px;" onclick="myFunction();">
<input type="submit" value="=" style="width: 20px;">
</td>
</form>
</tr>
</table>
<!-- <button type="button" id="button1" onclick="valida();">Enviar</button> -->
<!-- <div id="mensagem" align="center"
style="position:fixed; top:20px; left:10%; width:80%; padding:5px 5px 5px 5px; display:none;"></div> -->
function myFunction() {
var table = document.getElementById("table");
var rowCount = table.rows[0].cells.length;
var row = document.getElementById("adicionarcells");
var x = row.insertCell(-1);
i++
console.log(rowCount);
x.innerHTML = "<input type=\"text\" id=\"valor" + rowCount + "\" name=\"valor" + rowCount + "\" pattern=\"(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)\" required><select id=\"operador" + rowCount +"\" name=\"operador" + rowCount + "\"><option value =\"value1\" selected >+</option ><option value =\"value2\">-</option><option value =\"value3\">*</option><option value =\"value4\">/</option></select>";
if (rowCount == 11) {
document.getElementById("adiciona").disabled = true;
}
}
obs:它确实添加了输入,但这些值没有出现在我的 php
中
您需要将表格放在整个 table 周围,而不是行的单元格周围。
<form id="form1" name="form1" action="romanos.php" method="post">
<table id="table">
<tr id="adicionarcells">
<td></td>
<td>
<input type="text" id="valor1" name="valor1" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
<select id="operador1" name="operador1">
<option value="value1" selected>+</option>
<option value="value2">-</option>
<option value="value3">*</option>
<option value="value4">/</option>
</select>
</td>
<td>
<input type="text" id="valor2" name="valor2" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
</td>
<td></td>
<td>
<input type="button" id="adiciona" value="+" style="width: 20px;" onclick="myFunction();">
<input type="submit" value="=" style="width: 20px;">
</td>
</tr>
</table>
</form>
所以,我正在做一项学校作业,我必须制作一个最多有 10 个输入的计算器,有一个按钮可以添加更多输入,但由于某些原因,当我提交值时它不起作用,它仅显示页面中静态的前 2 个输入。
我认为问题与名称有关,但找不到
这是我现在正在做的事情:
<body>
<table id="table">
<tr id="adicionarcells">
<form id="form1" name="form1" action="romanos.php" method="post">
<td></td>
<td>
<input type="text" id="valor1" name="valor1" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
<select id="operador1" name="operador1">
<option value="value1" selected>+</option>
<option value="value2">-</option>
<option value="value3">*</option>
<option value="value4">/</option>
</select>
</td>
<td>
<input type="text" id="valor2" name="valor2" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
</td>
<td></td>
<td>
<input type="button" id="adiciona" value="+" style="width: 20px;" onclick="myFunction();">
<input type="submit" value="=" style="width: 20px;">
</td>
</form>
</tr>
</table>
<!-- <button type="button" id="button1" onclick="valida();">Enviar</button> -->
<!-- <div id="mensagem" align="center"
style="position:fixed; top:20px; left:10%; width:80%; padding:5px 5px 5px 5px; display:none;"></div> -->
function myFunction() {
var table = document.getElementById("table");
var rowCount = table.rows[0].cells.length;
var row = document.getElementById("adicionarcells");
var x = row.insertCell(-1);
i++
console.log(rowCount);
x.innerHTML = "<input type=\"text\" id=\"valor" + rowCount + "\" name=\"valor" + rowCount + "\" pattern=\"(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)\" required><select id=\"operador" + rowCount +"\" name=\"operador" + rowCount + "\"><option value =\"value1\" selected >+</option ><option value =\"value2\">-</option><option value =\"value3\">*</option><option value =\"value4\">/</option></select>";
if (rowCount == 11) {
document.getElementById("adiciona").disabled = true;
}
}
obs:它确实添加了输入,但这些值没有出现在我的 php
中您需要将表格放在整个 table 周围,而不是行的单元格周围。
<form id="form1" name="form1" action="romanos.php" method="post">
<table id="table">
<tr id="adicionarcells">
<td></td>
<td>
<input type="text" id="valor1" name="valor1" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
<select id="operador1" name="operador1">
<option value="value1" selected>+</option>
<option value="value2">-</option>
<option value="value3">*</option>
<option value="value4">/</option>
</select>
</td>
<td>
<input type="text" id="valor2" name="valor2" pattern="(^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$)" required>
</td>
<td></td>
<td>
<input type="button" id="adiciona" value="+" style="width: 20px;" onclick="myFunction();">
<input type="submit" value="=" style="width: 20px;">
</td>
</tr>
</table>
</form>