<form name="frm">
<input type="text" name="name1" onkeyup="showValue()">
<input type="text" name="name2" onkeyup="showValue()">
<input type="text" name="name3" onkeyup="showValue()">
<input type="text" name="name4">
</form>
<script>
function showValue()
{
name4.value=parseFloat(name1.value,10)+parseFloat(name2.value,10)
}
</script>
<input type="text" name="name1" onkeyup="showValue()">
<input type="text" name="name2" onkeyup="showValue()">
<input type="text" name="name3" onkeyup="showValue()">
<input type="text" name="name4">
</form>
<script>
function showValue()
{
name4.value=parseFloat(name1.value,10)+parseFloat(name2.value,10)
}
</script>
<input type="text" name="name1" onkeyup="showValue()">
<input type="text" name="name2" onkeyup="showValue()">
<input type="text" name="name3" onkeyup="showValue()">
<input type="text" name="name4">
</form>
<script>
function showValue()
{
if(isNaN(parseFloat(document.frm.name1.value,10)) || isNaN(parseFloat(document.frm.name2.value,10))) return
document.frm.name4.value=parseFloat(document.frm.name1.value,10)+parseFloat(document.frm.name2.value,10)
}
</script>
<input type="text" name="name1" onpropertychange="showValue()">
<input type="text" name="name2" onpropertychange="showValue()">
<input type="text" name="name3" onpropertychange="showValue()">
<input type="text" name="name4">
</form>
<script>
function showValue()
{
function String.prototype.Trim(){return this.replace(/(^\s*)|(\s*$)/g, "");}
var s1 = document.frm.name1.value;
var s2 = document.frm.name2.value;
var s3 = document.frm.name3.value;
if(s1.Trim()=="") s1=0;
if(s2.Trim()=="") s2=0;
if(s3.Trim()=="") s3=0;
document.frm.name4.value = parseFloat(s1, 10)+parseFloat(s2, 10)+parseFloat(s3, 10);
}
</script>
function showvalue(){
document.frm.name4.value=parseFloat(document.frm.name1.value)+parseFloat(document.frm.name2.value)
}//end function
</script>