2013-07-27 25 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

相关问题