javascript - 单击按钮时会清除文本字段中的内容

标签 javascript html button

function CalcVolume() {
  var radiusvalue = document.getElementById("radius").value
  if (radiusvalue) {
    if (isNaN(radiusvalue)) {
      alert("Provide a number")
      return;
    }

    volumevalue = 4 * 3.14 * radiusvalue * radiusvalue * radiusvalue
    document.getElementById("volume").value = volumevalue;

  } else {
    alert("Provide an input")
  }
}
form {
  border: 2px solid black;
  padding-left: 15px;
  height: 170px;
  width: 200px;
}
<form>
  <p>
    Radius<br>
    <input type="text" id="radius">
  </p>
  <p>
    Volume<br>
    <input type="text" id="volume">
  </p>
  <button onclick="CalcVolume()">Calculate</button>
</form>

在上面的代码段中,这是一个带有 UI 的小逻辑,用于计算给定半径的体积,单击带有文本“计算”的按钮时会自动清除文本字段。有人可以帮助我理解这一点吗?

最佳答案

form已提交。

您可以添加onsubmit="return false;"<form onsubmit="return false;">

堆栈片段

function CalcVolume() {
  var radiusvalue = document.getElementById("radius").value
  if (radiusvalue) {
    if (isNaN(radiusvalue)) {
      alert("Provide a number")
      return;
    }

    volumevalue = 4 * 3.14 * radiusvalue * radiusvalue * radiusvalue
    document.getElementById("volume").value = volumevalue;

  } else {
    alert("Provide an input")
  }
}
form {
  border: 2px solid black;
  padding-left: 15px;
  height: 170px;
  width: 200px;
}
<form onsubmit="return false;">
  <p>
    Radius<br>
    <input type="text" id="radius">
  </p>
  <p>
    Volume<br>
    <input type="text" id="volume">
  </p>
  <button onclick="CalcVolume()">Calculate</button>
</form>

<小时/>

或者替换 form带有 div 的元素

堆栈片段

function CalcVolume() {
  var radiusvalue = document.getElementById("radius").value
  if (radiusvalue) {
    if (isNaN(radiusvalue)) {
      alert("Provide a number")
      return;
    }

    volumevalue = 4 * 3.14 * radiusvalue * radiusvalue * radiusvalue
    document.getElementById("volume").value = volumevalue;

  } else {
    alert("Provide an input")
  }
}
.myform {
  border: 2px solid black;
  padding-left: 15px;
  height: 170px;
  width: 200px;
}
<div class="myform">
  <p>
    Radius<br>
    <input type="text" id="radius">
  </p>
  <p>
    Volume<br>
    <input type="text" id="volume">
  </p>
  <button onclick="CalcVolume()">Calculate</button>
</div>

关于javascript - 单击按钮时会清除文本字段中的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49332950/

相关文章:

html - CSS Filter 移除 H1

html - 如何使带有换行符的内联元素的背景延伸到每一边的最远边缘?

jquery - 使用 jquery 淡化背景图片而不会在两者之间变白

delphi - 发生错误时在Delphi按钮组件中检测MouseUp

java - 如何检索按钮位置?

javascript - jquery fadeIn fadeOut 效果不起作用

javascript - 如何通过 javascript 禁用 jQuery Mobile 中的范围 slider

javascript - 单击时如何使div淡出?

Javascript:更改表格行 HTML

javascript - 对事件监听器感到困惑