2014-04-04 140 views
0

即時通訊在Javascript上有一個累加器問題,即時消息新到這個,所以有人可以幫我這個嗎?我只是想要一個正確的答案累加器這是我的腳本,因爲它只是一直給我0作爲結果。計數器無法正常工作javascript

<script type="application/javascript"> 
var count=0; 
function counter(){ 
    count=count+1; 
} 
function results(){ 
alert ("The number of correct answers is "+count) 
} 
</script> 

,這是我的按鈕

<input type="radio" name="p1" value="answ" onsubmit="counter()"> 

結構爲正確答案

<input type="radio" name="p1" value="answ1"> 

其他選項

+0

您好!不要忘記接受答案,你甚至可以得到2代表! – SomeKittens

回答

1

onsubmit事件只適用於表單元素。你在考慮onclick。但是,最好有事件監聽器。

HTML:

<button id="increment">Click Me</button> 
The counter is at <span id="counter">0</span> 

JS:

var btn = document.querySelector('#increment'); 
var ctr = document.querySelector('#counter'); 
var counter = 0; 
var increment = function() { 
    counter++; 
    ctr.textContent = counter; 
}; 

btn.addEventListener('click', increment); 

Here's a JSFiddle to play with

+0

即時通訊使用我的提交按鈕上的「onclick」作爲代碼這一個: user3496155

+0

@ user3496155我用一些代碼更新了這個問題。這有助於解釋它嗎? – SomeKittens

0

的onsubmit不會被觸發計數器()函數。我不認爲onsubmit可以在單選按鈕上使用,即使點擊它也不會觸發onsubmit,它會觸發onclick。

因爲counter()永遠不會被執行,所以count永遠不會增加。

還要確保您的事件順序是正確的,以便counter()將始終在results()之前觸發,因爲我看不到result()在您的代碼中被調用的位置。

+0

對不起,我忘了把它。即時通話結果提交按鈕 user3496155