对事件函数中使用if / else进行故障排除

时间:2019-06-20 18:30:34

标签: javascript function addeventlistener

使用基本的HTML输入字段和一些背景Javascript使用if if来实现简单的双向摄氏/华氏转换时,我遇到了麻烦。

基本上,我希望能够在两个输入之一中输入C或F中的值,然后将转换显示在另一个输入中。摄氏到华氏度的转换可以正常进行,但是在华氏度输入中输入数字不会发生任何反应。我的代码在下面

var celsius = document.getElementById("Celsius");
    var fahrenheit = document.getElementById("Fahrenheit");

    celsius.addEventListener('input', conversion);
    fahrenheit.addEventListener('input', conversion);

    function conversion() {

    var celsiusvalue = document.getElementById("Celsius").value;
    var fahrenheitvalue = document.getElementById("Fahrenheit").value;
    const intcelsius = parseInt(celsiusvalue, 10);
    const intfahrenheit = parseInt(fahrenheitvalue, 10);

    if (this.id == "Celsius") {
    fahrenheit.value = ((intcelsius * 9)/5) + 32;
    }
    else {
    celsius.value == (((intfahrenheit - 32) * 5) / 9);
    }
    }
<section>

  <input id="Celsius" placeholder="Celsius"/><br/><br/>
  <input id="Fahrenheit" placeholder="Fahrenheit"/>

</section>

有人可以帮我吗?我应该在这里不使用if / else而是仅使用两个不同的功能吗?

1 个答案:

答案 0 :(得分:1)

        celsius.value == (((intfahrenheit - 32) * 5) / 9);

应为:

        celsius.value = (((intfahrenheit - 32) * 5) / 9);