我正在学习关于公司库存的考试。我想我可以帮自己一个忙,在学习这门考试的同时学习一些关于编码的新知识。通常情况下我只在我的公司用很少的javascript做前端。
我要做的是设置一个包含2个输入行的表。
第1行:来自我的输入第2行:输入的总和
我放入一个按钮,该按钮应该将我在第1行输入的值赋予第2行中的另一个字段。
当我的输入类型为数字即时获取:指定值“未定义”不是有效数字。该值必须与以下正则表达式匹配: - ?(\ d + | \ d +。\ d + | |。\ d +)([eE] [ - +]?\ d +)?
当我的输入类型是文本im得到:undefined
我很确定我的功能有些不对劲,但我无法弄明白,当我搜索我的问题时,我只能找到更复杂的情况,我也不明白。
提前感谢任何帮助:)
<script>
function test() {
var x = document.getElementById("1").value;
document.getElementById("ro").value = x;
}
</script>
</head>
<body>
<table>
<tr><td><b><button onclick="test()">test</button></b></td></tr>
<tr><td> </td></tr>
<tr>
<td>
<div id="flex-table">
<table id="names">
<!--Names--><!--Names-->
<caption>A: Vermögen</caption>
<tr><th>I. Anlagevermögen</th></tr>
<tr><td class="first">Grundstücke</td></tr>
<tr><td class="second">Gernotstraße</td> </tr>
</table>
<table id="input">
<!--Input--><!--Input-->
<caption> </caption>
<tr><th><p>€</p></th></tr>
<tr><td> </td></tr>
<tr><td><form id="1"><input type="number" value="0"></form></td></tr>
</table>
<table id="values">
<!--Values--><!--Values-->
<caption> </caption>
<tr><th><p>€</p></th></tr>
<tr><td> </td></tr>
<tr><td><input id="ro" type="number"value="0" readonly></td></tr>
</table>
</div>
</td>
</tr>
</table>
错误
id
不仅仅是数字。所以你必须混合一些字符串document.getElementById("string1")
放在form
而不是input.so添加id输入而不是form
<script>
function test() {
var x = document.getElementById("string1").value;
document.getElementById("ro").value = x;
}
</script>
<body>
<table>
<tr>
<td><b><button onclick="test()">test</button></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<div id="flex-table">
<table id="names">
<!--Names-->
<!--Names-->
<caption>A: Vermögen</caption>
<tr>
<th>I. Anlagevermögen</th>
</tr>
<tr>
<td class="first">Grundstücke</td>
</tr>
<tr>
<td class="second">Gernotstraße</td>
</tr>
</table>
<table id="input">
<!--Input-->
<!--Input-->
<caption> </caption>
<tr>
<th>
<p>€</p>
</th>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<form><input id="string1" type="number" value="0"></form>
</td>
</tr>
</table>
<table id="values">
<!--Values-->
<!--Values-->
<caption> </caption>
<tr>
<th>
<p>€</p>
</th>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><input id="ro" type="number" value="0" readonly></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
你正在读取没有价值的form
的价值。你可能想从input
元素中读取值。
function test() {
var x = document.getElementById("1").value;
document.getElementById("ro").value = x;
}
<table>
<tr>
<td><b><button onclick="test()">test</button></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<div id="flex-table">
<table id="names">
<caption>A: Vermögen</caption>
<tr>
<th>I. Anlagevermögen</th>
</tr>
<tr>
<td class="first">Grundstücke</td>
</tr>
<tr>
<td class="second">Gernotstraße</td>
</tr>
</table>
<table id="input">
<caption> </caption>
<tr>
<th>
<p>€</p>
</th>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<input id="1" type="number" value="0">
</td>
</tr>
</table>
<table id="values">
<caption> </caption>
<tr>
<th>
<p>€</p>
</th>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><input id="ro" type="number" value="0" readonly></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
您的第二张表应按以下方式更正。 id值“1”表示表单元素而不是输入元素。
<table id="input">
<!--Input--><!--Input-->
<caption> </caption>
<tr><th><p>€</p></th></tr>
<tr><td> </td></tr>
<tr><td><form><input type="number" value="0" id="1"></form></td></tr>
</table>