2014-02-28 46 views
-2

我有数百个计数器按钮,我发现如何在JavaScript中做简单的一个。 但一遍又一遍地做这个功能真的很无聊,有没有比这更简单的方法?我的功能的快捷方式

这是我的代码。

的Javascript:

var cnt = 0; 
    function add() {cnt++;set();} 
    function sub() {cnt--;set();} 
    function set() {myform.shesha.value = cnt;} 
    function price() {myform.shesha1.value = cnt*.500;}; 

var cnt1 = 0; 
    function add1() {cnt1++;set1();} 
    function sub1() {cnt1--;set1();} 
    function set1() {myform.shesha01.value = cnt1;} 
    function price1() {myform.shesha11.value = cnt1*.750;}; 

HTML:

0<input type="button" value="shesha" onclick="add()" />&emsp;&emsp;&emsp; 
<input type="input" value="0" size="3" name="shesha" onblur="set();" /> 
<input type="button" value=" - " onclick="sub()" /> 
<input type="input" value="0" size="3" name="shesha1" onblur="price();" /></br> 

1<input type="button" value="anab " onclick="add1()" />&emsp;&emsp;&emsp; 
<input type="input" value="0" size="3" name="shesha01" onblur="set1();" /> 
<input type="button" value=" + " onclick="sub1()" /> 
<input type="input" value="0" size="3" name="shesha11" onblur="price1();" /></br>` 
+3

最绝的。使用数组,利用DOM,等等等等等等。有很多选择。 –

+0

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array – Paulpro

回答

0

有许多方法可以做到这一点,这是一个:

cnt = [] 

在这里,而不是一堆的变量,有一个数组,并更改与您的位置相对应的数组中的值。

。 。 。

onclick="add(1)" 

。 。 。

function add(pos) { 
    cnt[pos]++ 
} 
+0

对不起,但我只是学习JavaScript所以如果你能解释它更多我会感激 – user3366530

+0

你知道如何阵列工作? –

+0

是的,我知道,但我不知道如何在这个例子中使用thim – user3366530

0

HTML:

<div class="calc"> 
    <input type="button" class="add" value="add" /> 
    <input type="input" class="addVal" /> 
    <input type="button" class="sub" value="add" /> 
    <input type="input" class="subVal" /> 
</div> 

JS:(假定的jQuery)

$('.add').click(function (e) { 
    var add = $(this).parent().find('.addVal'); 
    add.val(add.val()++); 
}); 
$('.sub').click(function (e) { 
    var add = $(this).parent().find('.subVal'); 
    add.val(add.val()--); 
});