jQuery变量加法和其他总和
问题描述:
我有javascript每次单独统计2个单独的按钮,然后输出在同一页上的金额。这工作,但我现在试图添加第三个值输出在页面上,这是我通过将2个属性加在一起计算的点击总数。这似乎并没有工作。jQuery变量加法和其他总和
的java
<script type="text/javascript">
var NextClick = 0;
var PrevClick = 0;
var TotalClicks = 0;
function getValueNext()
{
var y=document.getElementById("NextClick").value = ++NextClick
$('.NextClick').val(y);
}
function getValuePrev()
{
var x=document.getElementById("PrevClick").value = ++PrevClick
$('.PrevClick').val(x);
}
function getSumClicks()
{
var z= x + y
$('.TotalClicks').val(z);
}
</script>
的Html
Clicked next <input class="NextClick" size="3" onfocus="this.blur();" value="0"> times.
Clicked prev <input class="PrevClick" size="3" onfocus="this.blur();" value="0"> times.
Clicked total <input class="TotalClicks" size="3" onfocus="this.blur();" value="0"> times.
这样做的一点是,从每个按钮上的点击我可以计算出它们被留下,其图像上,因此它们已经选择。
它也只是发生在我身上,而不是记录两个值,我可以改为添加一个函数,当下一个被点击,但是当prev被点击时需要一个,我不知道如何编码这个。
答
我没有看到与NextClick
作为ID的元素。所以这个:
var y=document.getElementById("NextClick").value = ++NextClick
变为:
var y = ++NextClick
二x和y是局部变量,它们的功能。它们不存在于getSumClicks()
之内。
你可能想这样的:
function getValueNext() {
$('.NextClick').val(++NextClick);
}
function getValuePrev() {
$('.PrevClick').val(++PrevClick);
}
function getSumClicks() {
$('.TotalClicks').val(NextClick + PrevClick);
}
你能在http://jsfiddle.net做一个模拟了?此外,JavaScript具有函数级别的作用域,因此您的'getSumClicks()'不会像代码那样访问'x'和'y'。你必须将它们移动到“NextClick”和其他位置。 – JesseBuesking