2017-06-05 74 views
0

使用JavaScript添加

function multiplyBy() 
 
{ 
 
     num1 = document.getElementById("firstNumber").value; 
 
     num2 = document.getElementById("secondNumber").value; 
 
     num3= document.getElementById("result").value = num1 * num2; 
 
     document.getElementById("total").value = +num3 ; 
 
}
1st Number : <input type="text" id="firstNumber" value="" /><br> 
 
2nd Number: <input type="text" id="secondNumber" value="" onchange="multiplyBy()" /><br> 
 
<p>The Result is : <br> 
 
<input type="text" name="result" id = "result" value=""/> 
 
</p> 
 
<p>Total :<br> 
 
<input type="text" name="total" id="total" value=""/> 
 
</p>

function multiplyBy() 
 
{ 
 
     num1 = document.getElementById("firstNumber").value; 
 
     num2 = document.getElementById("secondNumber").value; 
 
     num3= document.getElementById("result").value = num1 * num2; 
 
}
1st Number : <input type="text" id="firstNumber" value="" /><br> 
 
2nd Number: <input type="text" id="secondNumber" value="" 
 
onchange="multiplyBy()" /><br> 
 
<p>The Result is : <br> 
 
<input type="text" name="result" id = "result" value=""/> 
 
</p>

我两个数相乘here.how到另一个文本添加的倍增数box.suppose 2 & 5倍乘号后来再乘以如何添加这些数字。

+0

当你想他们增加增加吗? – guradio

+0

当我得到两个数字相乘的结果时,我会进行另一次乘法运算,以前的相乘数字必须与另一个文本字段中的当前相乘数字相加。 – johnny

+0

@chakri在你的第一个片段中改变'document.getElementById(“total”)。value = + num3;'to'document.getElementById(“total”)。value + = num3;' – gvmani

回答

0

试试这个。您需要使用parseFloat解析输入值。这会将字符串转换为数字。现有的结果值将被添加到新计算的值中。 |0用于输入的获取0

更新

  1. 分组,加入本和总结果框

追加新的结果中的各附加输入的假值。

var last=0; 
 
function multiplyBy() { 
 
    var num1 = document.getElementById("firstNumber"); 
 
    var num2 = document.getElementById("secondNumber"); 
 
    var prev = document.getElementById("prev"); 
 
    var present = document.getElementById("present"); 
 
    var total = document.getElementById("result"); 
 
    prev.value=last; 
 
    present.value=(parseFloat(num1.value) * parseFloat(num2.value)) 
 
    last = last+(parseFloat(num1.value) * parseFloat(num2.value)) 
 
    total.value=last; 
 
    num1.value = ""; 
 
    num2.value = ""; 
 

 
    }
1st Number : <input type="text" id="firstNumber" value="" /><br> 2nd Number: <input type="text" id="secondNumber" value="" onchange="multiplyBy()" /><br> 
 
<p > 
 
Prev result:<br> 
 
<input type="text" name="result" id="prev" ><br> 
 
Present:<br> 
 
<input type="text" name="result" id="present" ><br> 
 
The total Result is : <br> 
 
<input type="text" name="result" id="result"><br> 
 
</p>

+0

我的意思是如果我做两次乘法运算,前一个值必须加到另一个文本字段的当前值 – johnny

+0

另一个文本字段意味着另一个结果框 – prasanth

+0

@chakri检查我更新的答案。我添加了代码追加与新文本fileld加值 – prasanth

0

如果要计算文本框输入的更改(如下所示),则需要添加事件处理程序。

function multiplyBy() 
 
{ 
 
    var result = document.getElementById("result"); 
 
     var num1 = document.getElementById("firstNumber").value; 
 
     var num2 = document.getElementById("secondNumber").value; 
 
     
 
    var num3= parseFloat(num1) * parseFloat(num2);// to convert entered values to float and || 0 to use 0 if no value is there 
 
     
 
     if(!isNaN(num3)){ 
 
      document.getElementById("resultPrev").value = document.getElementById("result").value; 
 
      document.getElementById("resultCurrent").value = num3; 
 
      result.value = parseFloat(result.value || 0) + num3; 
 
     } 
 
     
 
     
 
} 
 

 

 
document.getElementById("firstNumber").addEventListener("change",multiplyBy); 
 

 

 
document.getElementById("secondNumber").addEventListener("change",multiplyBy);
1st Number : <input type="text" id="firstNumber" value="" /><br> 
 
2nd Number: <input type="text" id="secondNumber" /><br> 
 
<p>The Previous Result is : <br> 
 
<input type="text" name="resultPrev" id = "resultPrev" value="0"/> 
 
</p> 
 
<p>The Current Result is : <br> 
 
<input type="text" name="resultCurrent" id = "resultCurrent" value=""/> 
 
</p> 
 
<p>The Final Result is : <br> 
 
<input type="text" name="result" id = "result" value=""/> 
 
</p>

考虑处理非数值。

+0

你能否解释一下。当我得到两个数相乘的结果时,我会做另一个乘法,前面的相乘数必须加上现在的相乘数数字在另一个文本字段中。 – johnny

+0

检查更新!如果这是你想要的。 –

+0

没有,如果我做两个乘法运算的前一个结果必须添加到目前reswult在另一个文本字段 – johnny

0

我已经添加了multiplyBy()到两个输入字段和改变的类型数目,以限制用户仅输入号码。

请检查下面的代码片段。

document.getElementById("firstNumber").addEventListener("change",multiplyBy); 
 
document.getElementById("secondNumber").addEventListener("change",multiplyBy); 
 

 
function multiplyBy() 
 
    { 
 
    actualResult = document.getElementById("actualResult").value ? document.getElementById("actualResult").value : 0; // Return zero if there is no value in actualResult input field 
 
      num1 = document.getElementById("firstNumber").value; 
 
      num2 = document.getElementById("secondNumber").value;  
 
      num3= document.getElementById("result").value = num1 * num2; 
 
document.getElementById("actualResult").value = Number(actualResult) + num3; 
 
    }
1st Number : <input type="number" id="firstNumber" value=""/><br> 
 
    2nd Number: <input type="number" id="secondNumber" value=""/><br> 
 
    <p>The Current Result is : <br> 
 
    <input type="number" name="result" id = "result" value=""/> 
 
</p> 
 
    <p>Previous Result + Current Result : <br> 
 
    <input type="number" name="actualResult" id = "actualResult" value=""/> 
 
    </p>

+0

其不工作 – johnny

+0

您是否尝试运行代码段? – Haroon

+0

感谢这就是我想要的,它在代码片段中工作正常,但不能在我的日食中工作。 – johnny

0

你只需要对文本框中获取值和结果

function multiplyBy() 
{  var sum = 0; 
     var num=0; 
     num1 = document.getElementById("firstNumber").value; 
     num2 = document.getElementById("secondNumber").value; 
     num =parseInt(num1 * num2); 
     num3=parseInt(document.getElementById("result").value); 
     document.getElementById("result").value=(num + num3); 

} 
</script> 
1st Number : <input type="text" id="firstNumber" value="" /><br> 
2nd Number: <input type="text" id="secondNumber" value="" 
onchange="multiplyBy()" /><br> 
<p>The Result is : <br> 
<input type="text" name="result" id = "result" value="0"/> 
</p> 
+0

没有,如果我做了两米乘operationd以前的值必须添加到现值 – johnny

+0

是的,它会增加现值 –

+0

你置零默认值导致文本框中