2013-07-27 41 views
3

我正在使用其id到JavaScript變量,添加另一個變量值(十進制數),並將結果顯示在一個文本區域值(十進制數)中同樣的html頁面如何在沒有頁面刷新的情況下更新html中的javascript變量值

文本區域代碼:

<div class="input-resp"><span><input class="textbox" id="num" name="count" type="text" size="5" maxlength="3" value="" /></span></div> 

傳遞價值,以var和它添加到另一個變種

var a = document.getElementById('num').value; 
var b = 1000; 
var c = parseFloat(a) + parseFloat(b); 

傳遞變種C到div的ID測試

document.getElementById("test").innerHTML = c; 

HTML測試ID

<div id="test"></div> 

但在這裏,每當我更新與新號碼的文本區域,最後輸出不更新instantly.I具有手動刷新頁面以獲取新的價值。無論如何,我更新的值沒有頁面刷新?

+0

哪裏是你的jQuery和你在哪裏定義變量'data'?還有更多..你怎麼這樣做?點擊事件? – putvande

+0

@putvande:'data'是一個typo.variables是a,b和c.there沒有點擊,我想要更新值,只要我輸入textarea – acr

回答

2

如果它要只要您輸入到輸入更新,您需要一個事件處理程序:

document.getElementById('num').onkeyup = function() { 
    var a = 1000 + parseFloat(this.value); 
    document.getElementById("test").innerHTML = a || 0; 
} 

FIDDLE

+1

請注意,不需要'parseFloat'''1000'數。另外請注意,這不適用於粘貼或除鍵盤以外的任何其他輸入,請根據需要使用適當的事件(想到輸入事件)。 – David

+0

@大衛 - 真的! – adeneo

+0

@David - [輸入事件](https://developer.mozilla.org/en-US/docs/Web/Reference/Events/input)沒有得到廣泛支持 – adeneo

相關問題