[英]HTML Form to JavaScript variable
我有一个剧本。 该脚本必须进行一些计算。 由于现在用户必须编辑文件中的脚本变量,因此我想编写一个表单,该表单在更新表单时始终会更新变量。 表单中的一个变量被更新时,大约总是需要更新十个变量。
例如:
在HTML表单中,有10个类似这样的字段( onchange="formChanged()"
来自尝试):
<input type="number" name="pL" step="0.001" value="250000" onchange="formChanged()"/><br>
所以我想在JavaScript中编辑此变量:
var pL=250000;
我尝试了这个:
function formChanged() {
var x = document.getElementsByName("x")[0].value
var m0 = document.getElementsByName("pL")[0].value
var V = document.getElementsByName("V")[0].value
}
但这是行不通的...您有任何建议吗,我做错了什么?
参见https://www.w3schools.com/jsref/met_doc_getelementsbyname.asp
它应该是getElementsByName
。
<!DOCTYPE html> <html> <body> <input type="number" name="pL" step="0.001" value="250000" onchange="formChanged()"/><br> <input type="number" name="x" step="0.001" value="250000" onchange="formChanged()"/><br> <input type="number" name="V" step="0.001" value="250000" onchange="formChanged()"/><br> <p id="demo"></p> <script>function formChanged() { var x = document.getElementsByName("x")[0].value var m0 = document.getElementsByName("pL")[0].value var V = document.getElementsByName("V")[0].value document.getElementById("demo").innerHTML = x + ' ' + m0 + ' ' + V; } </script> </body> </html>
这可行。 请添加完整的代码段。
如果您想通过javascript更改变量的值,请将该值分配给它的value属性。
所以代替
pL=250000;
用formChanged函数编写
document.getElementsByName("pL")[0].value=250000;
从您对要在if上执行的计算的问题中也不清楚,如果说您想将值x和V加为新的pL然后写
var x = document.getElementsByName("x")[0].value
var m0 = document.getElementsByName("pL")[0].value
var V = document.getElementsByName("V")[0].value
document.getElementsByName("pL")[0].value=Number(x)+Number(V)
在HTML5中,“ name”属性已被弃用,并已由许多元素的“ id”属性代替。 我尝试了以下方法,它对我有用。
<input type="number" id="pL" step="0.001" value="250000" onchange="formChanged()"/>
<script>
function formChanged() {
var m0 = document.getElementById("pL").value;
alert("The current value is " + m0);
}
</script>
让我知道这是否对您也有用。 另外,请确保在formChanged()函数中的语句后加上分号。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.