javascript - 指定的值“未定义”不是有效数字
问题描述
我正在学习关于公司库存的考试。我想我可以帮自己一个忙,在为这次考试学习的同时学习一些关于编码的新知识。通常我在我的公司只用很少的 javascript 做前端。
我想要做的是设置一个包含 2 个输入行的表。
第 1 行:我输入第 2 行:我输入的总和
我放了一个按钮,应该将我在第 1 行输入的值提供给第 2 行的另一个字段。
当我的输入类型是数字时,我得到这个:指定的值“未定义”不是有效数字。该值必须与以下正则表达式匹配:-?(\d+|\d+.\d+|.\d+)([eE][-+]?\d+)?
当我的输入类型是文本时,我得到:未定义
我很确定我的功能有问题,但我无法弄清楚,当我搜索我的问题时,我只会发现更复杂的情况,我也不明白。
提前感谢您的帮助:)
<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
没有输入。所以将 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>
推荐阅读
- database - 在 postgres 中的表之间创建外键关系
- google-apps-script - 将值复制并粘贴到 Google 表格中的空白单元格或非空白单元格中时,如何使 onEdit() 事件对象 e 工作?
- javascript - 将两行合并为一行时自动删除空格
- java - 如何配置多个 Spring bean 并选择使用哪一个?可能吗?
- java - 如何保护我的 Apache Camel REST API?
- objective-c - 从objective-c++调用swift函数
- python - 如何创建 x 数量的列表/集合,以便以后添加?
- kubernetes - 如何允许外部进程连接 k8s 的 pod?
- java - 使用 Pyjnius 时如何修复 jnius.JavaException
- c# - 将属性传递给方法并将其设置在该方法中