Javascript 分别计算
我就是想不出来:( 尝试了很多组合,结果只是出现了错误 我想做的是: -2行复选框。 第1行包含一个值为的复选框:Javascript 分别计算,javascript,php,Javascript,Php,我就是想不出来:( 尝试了很多组合,结果只是出现了错误 我想做的是: -2行复选框。 第1行包含一个值为的复选框: <input onclick="clickCh(this)" type="checkbox" name="row1" value="1"> <input onclick="clickCh(this)" type="checkbox" name="row2" value="2"> 脚本本身不是我的,我只是在这个网站上找到的发布的代码只在全局运行时运行,没有
<input onclick="clickCh(this)" type="checkbox" name="row1" value="1">
<input onclick="clickCh(this)" type="checkbox" name="row2" value="2">
脚本本身不是我的,我只是在这个网站上找到的发布的代码只在全局运行时运行,没有错误(不在onload事件或任何其他函数中)-一个小的更改可以修复:
var total = document.getElementById("total")
clickCh = function(caller){
if(caller.checked){
add(caller)
} else {
subtract(caller)
}
}
function add(caller){ total.value = total.value*1 + caller.value*1}
function subtract(caller){ total.value = total.value*1 - caller.value*1}
jsFiddle:
(更改在第2行-将函数分配给变量可确保它进入全局范围。)
更好的方法是将
clickCh
函数分配给脚本中每个复选框的onclick
事件,这样就不会污染全局范围。getelementbyid后的分号?我没有看到任何问题。文本中任何地方都没有问号支持我的理论…-2行checkboxes?脚本似乎来自:这里有一个JSFIDLE可供使用……它似乎确实产生了错误:
var total = document.getElementById("total")
function clickCh(caller){
if(caller.checked){
add(caller)
} else {
subtract(caller)
}
}
function add(caller){ total.value = total.value*1 + caller.value*1}
function subtract(caller){ total.value = total.value*1 - caller.value*1}
var total = document.getElementById("total")
clickCh = function(caller){
if(caller.checked){
add(caller)
} else {
subtract(caller)
}
}
function add(caller){ total.value = total.value*1 + caller.value*1}
function subtract(caller){ total.value = total.value*1 - caller.value*1}