我想要的是存储 ID 为 3 的数据库对象的总和。(请参阅下面的输入标签) 我有许多具有不同值的不同 ID。下面示例中我要存储的值为 2。
除此之外,我想通过 JavaScript 使用“+”和“-”按钮增加/减少 sum[3] 的值。所以我创建了一个名为 incr 和 decr 的函数来执行此操作:
<script type="text/javascript">
function incr(what)
{
alert(what);
what.value ++;
// rest of the function I left out, it works with a 'normal' name of the input tag
//but I need to use the array
}
</script>
how many?<input type="text" size="10" name="sum[3]" value="2" />
<input name="plus" type="button" value="+" onclick="incr(document.sum[3])" />
<input name="min" type="button" value="-" onclick="decr(document.sum[3])" />
我无法让它工作,即使警报也没有返回值。有人吗?
最佳答案
这不是最优雅的方法,因为它使用了大量内联代码,但它可以解决您的问题。您的方法出了什么问题是 document.sum[3] 不是 name="sum[3]"输入的正确选择器
<script type="text/javascript">
function incr(what)
{
what.value ++;
alert(what.value);
// rest of the function I left out, it works with a 'normal' name of the input tag
//but I need to use the array
}
</script>
how many?<input type="text" size="10" name="sum[3]" value="2" />
<input name="plus" type="button" value="+" onclick="incr(document.getElementsByName('sum[3]')[0])" />
<input name="min" type="button" value="-" onclick="decr(document.getElementsByName('sum[3]')[0])" />
您应该考虑使用 jQuery 并使用事件处理程序重构代码,而不是使用内联 javascript。
关于javascript - 在 JavaScript 中使用数组作为名称对输入元素的值进行计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13335817/