2011-04-20 99 views
4
var index = 0; 
var index = 0; 

由defualt索引的值是0,現在我有兩個按鈕,當我點擊按鈕2或1時,索引的值應該增加。在單擊第二個按鈕應取的值一個開始......同樣第三等等等等增加點擊按鈕

+3

問題是......? – 2011-04-20 21:32:33

回答

5

你會需要一個函數來做到這一點:

function incrementIndex() { 
    index += 1; 
} 

這裏假定您的index變量是全局變量。

接下來你需要做的是等待click事件。有三種方法可以在JavaScript中做到這一點。

  1. 聯JavaScript

    <button onclick="incrementIndex()">Button 1</button> 
    <button onclick="incrementIndex()">Button 2</button> 
    

    這是希特勒是如何開發的網站。不要這樣做。

  2. 事件處理程序

    這就要求你要等到DOM加載,然後在「得到」你的兩個按鈕莫名其妙。如果你只有兩個頁面上的按鈕,你可以做這樣的事情(但只有當該腳本來的HTML文檔中):

    var buttons = document.getElementsByTagName('button'); 
    buttons[0].onclick = buttons[1].onclick = incrementIndex; 
    

    注意,在這個例子,有沒有括號()incrementIndex的末尾。

  3. 事件監聽器

    問題與事件處理程序是,你只能在一個時間一個附加功能。如果您要讓其他JavaScript偵聽按鈕點擊,則必須使用事件偵聽器。

    但事件監聽器是一個主要的屁股疼痛,因爲IE6-8做錯了,(取決於項目),你可能不得不圍繞它編碼。在它的最簡單的,這裏是如何在大多數瀏覽器添加事件偵聽器:

    var addEvent = window.addEventListener ? function (elem, type, method) { 
        elem.addEventListener(type, method, false); 
    } : function (elem, type, method) { 
        elem.attachEvent('on' + type, method); 
    }; 
    
    addEvent(buttons[0], 'click', incrementIndex); 
    addEvent(buttons[1], 'click', incrementIndex); 
    

    這僅僅是聽的跨瀏覽器事件的表面。如果你想了解更多,QuirksMode has a good series of articles就可以了。

5

你的問題還不清楚,但我認爲你在尋找這樣的事情......

<script type="text/javascript"> 
    index = 0; 
    increment = function(){ index++; } 
</script> 
<button name="button1" onclick="increment();">Button 1</button> 
<button name="button2" onclick="increment();">Button 2</button> 
4
<html> 
    <head> 
    <script type="text/javascript"> 
     var index = 0; 
    </script> 
    </head> 
    <body> 
    <button id="button1" onclick="index=index + 1;">1</button> 
    <button id="button2" onclick="index=index + 1;">2</button> 
    </body> 
</html> 
2
<html> 
<head> 
<script type="text/javascript"> 
var index = 0; 
</script> 
</head> 
<body> 
In response to <a href="http://stackoverflow.com/questions/5736860/incrementing-the-count-on-click-of-button">theJava's question at StackOverflow</a> 
<button onclick="index = index + 1;document.getElementById('tb').value = index;">Button1</button> 
<button onclick="index = index + 1;document.getElementById('tb').value=index;">Button2</button> 
<input type="text" id="tb"/> 
</body> 
</html> 

演示:

http://gsvolt.no-ip.org/buttoncount.html

1

正如@Brandon所說,這個問題並不十分清楚。就我所能理解的,你在問這樣的事情。我對嗎?它是硬編碼的,但我想確定我理解你的問題。

<script type="text/javascript"> 
var index = 0; 

function increment(var1) 
{ 
    index++; 
    if(var1 == 1) 
    { document.getElementById('button1').value=index; } 
    else 
    { document.getElementById('button2').value=index; } 

} 
</script> 

<input type="button" id="button1" onclick="increment(1)" value="increment me!"/> 
<input type="button" id="button2" onclick="increment(2)" value="increment me!"/>