当前位置: 首页 > 知识库问答 >
问题:

如何将(a*b)两个输入的文本值乘以一个,并在javascript中通过文本更改动态显示它?

郭星文
2023-03-14

我想显示客户必须支付的钱,我的输入是这样的:

<input type="text" class="form-control" placeholder="cost " id="txt" name="credit">

<input type="text" class="form-control" placeholder="quantity" id="txt" name="limit">

当输入文本发生变化时,我想在一个中显示总成本(数量*成本)


共有3个答案

傅朗
2023-03-14

希望这会有用

// get cost field
var _cost = document.getElementById("cost");
_cost.addEventListener('keyup',function(event){
updateCost()
})

// get quantity field
var _quantity = document.getElementById("quantity");
_quantity.addEventListener('keyup',function(event){
updateCost()
})


function updateCost(){
var _getCost = document.getElementById("cost").value;
var _getQuantity = document.getElementById("quantity").value;
var _total = _getCost*_getQuantity;
console.log(_total);
document.getElementById("updateValue").textContent = ""; // Erase previous value
document.getElementById("updateValue").textContent = _total // update with new value
}

JSFIDLE

宋志学
2023-03-14

如果两个框都为空,上述所有操作都将生成错误。试试这段代码,它已经过测试并正在运行。

<script>

function calc()
{
    var credit = document.getElementById("credit").value;

    var limit = document.getElementById("limit").value; 

    if(credit == '' && limit != '')
    {
        document.getElementById("cost").innerHTML = parseInt(limit);
    }
    else if(limit == '' && credit != '')
    {
        document.getElementById("cost").innerHTML = parseInt(credit);
    }
    else if(limit!= '' && credit!= '')
    {
        document.getElementById("cost").innerHTML = parseInt(limit) * parseInt(credit);
    }
    else
    {
        document.getElementById("cost").innerHTML = '';
    }
}
 </script>

</head> 
<input type="number" value="0" min="0"  class="form-control" placeholder="cost" id="credit" name="credit" onkeyup="calc();">

<input type="number" value="0" min="0"  class="form-control" placeholder="quantity" id="limit" name="limit" onkeyup="calc();">


<p id="cost"></p>
金飞翼
2023-03-14

你可以试试这个:

<input type="text" class="form-control" placeholder="cost " id="credit" name="credit" onchange="calculate()">
<input type="text" class="form-control" placeholder="quantity" id="limit" name="limit" onchange="calculate()">
<p id="result"></p>

和javascript部分:

function calculate() {
   var cost = Number(document.getElementById("credit"));
   var limit = Number(document.getElementById("limit"));

   document.getElementById("result").innerHTML= cost*limit;

}

您必须确保在输入中输入了数字。

 类似资料:
  • 问题内容: 我希望有 我可以输入的文本框 通过AJAX调用(“获取当前修订版”)更新其值,然后 另一个按钮(“更新代码库”)使另一个AJAX调用文本框中的值 我不知道如何将所有这些结合在一起。 我只想使用javascript,而不要使用jQuery 问题答案:

  • 问题内容: 我正在尝试在浏览器扩展程序中运行javascript,以自动化在网站上填写表单然后单击按钮的过程- 可以通过在地址栏中键入javascript:code来模拟扩展程序代码。 我遇到问题的网站使用。我有输入字段ID的名称,并且正在使用它们来更改输入字段的值。这些字段已填满,但是当我单击按钮时,它说它们没有填满,没有值,并且都出错了。正在进行一些验证,除非我手动输入值,否则这些验证不会“看

  • 大家早上好。我从标题中知道它是一切都混淆了,所以我会试着解释得更好。我需要为一个医疗项目创建一个计算糖化血红蛋白的应用程序。我有3个编辑文本,我在其中输入医学测试的值。三者中的每一个都因另一个而改变。举个例子:如果我一个有42,另一个是5.99%。诸如此类。我试图让它们动态地变化:在我写作的过程中保持不变。我尝试使用OnCliclListener,但是我必须写完整的值。 我不知道我解释得好不好让你

  • 嗨,我在我的应用程序中使用TextInputLayout。我想将提示文本颜色和浮动标签颜色(聚焦和不聚焦)设置为白色。我已经尝试了下面的代码。 它适用于Lollipop,但不适用于较低的versions.How我可以在较低的版本中实现相同的功能吗?

  • 我目前正在用Java编写一个程序,其中我需要从用户那里获得输入,这是一段文本。然而,我需要用户能够在一次输入文本的多个段落。当程序提示输入时,只需粘贴整段文本就可以实现这一点。我对输入使用扫描器,当我将多个段落粘贴到输入中时,无论何时打印存储文本的变量,都不会抛出错误,只输出第一节(在第一个换行符之前)。如何使用多个换行符存储整段文本,而不提示用户为每个文本块输入单独的输入? 我已经有了一些代码,

  • 问题内容: 我一直在网上寻找这个东西,甚至甚至找不到其他人问这个,更不用说解决方案了…… 选择文本后,是否可以更改文本输入中突出显示区域的颜色?不是突出显示边框或背景,而是当您实际选择文本时出现在文本周围的部分。 问题答案: 感谢您提供的链接,但似乎并没有公开实际突出显示的文本。 就当前的实际问题而言,我最终选择了一种不同的方法,因为完全不需要文本输入,并使用了带有某些JavaScript的inn