如何5秒后清除innerHTML?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (238)

我有下面的代码,它可以正常工作,但是我想在5秒后清除innerHTML。不是每5秒一次,但当它出现时,它将在5秒后再次被清除。

function myfunction() {
  var x = document.forms["forma"]["emri"].value;
  var x1 = document.forms["forma"]["mbiemri"].value;
  var x2 = document.forms["forma"]["email"].value;
  var x3 = document.forms["forma"]["vendbanimi"].value;
  if ((x == null || x == "") || (x1 == null || x1 == "") || (x2 == null || x2 == "") || (x3 == null || x3 == "")) {
    document.getElementById("js").innerHTML = "Ju lutem ploresojini te gjitha te dhenat";
    return false;
  }
  if (x2.indexOf("@") < 1) {
    document.getElementById("js").innerHTML = "Ju lutem insertoni nje email te sakte";
    return false;
  }
}
<div class="forma">
  <center>
    <form class="form-orizontal" method="post" name="forma">
      <div class="input-prepend">
        <span class="add-on">e</span>
        <input class="span2" id="prependedInput" type="text" placeholder="emri" name="emri">
      </div>
      <br>
      <div class="input-prepend">
        <span class="add-on">mb</span>
        <input class="span2" id="prependedInput" type="text" placeholder="mbiemri" name="mbiemri">
      </div>
      <br>
      <div class="input-prepend">
        <span class="add-on">@</span>
        <input class="span2" id="prependedInput" type="text" placeholder="email" name="email">
      </div>
      <br>
      <div class="input-prepend">
        <span class="add-on">vb</span>
        <input class="span2" id="prependedInput" type="text" placeholder="vendbanimi" name="vendbanimi">
      </div>
      <br>
      <div class="input-prepend">
        <span class="add-on">V</span>
        <select name="viti_lindjes" class="small">
          <option style="display:none">Viti i lindjes</option>
          <option>1990</option>
          <option>1991</option>
          <option>1992</option>
          <option>1993</option>
          <option>1994</option>
          <option>1995</option>
          <option>1996</option>
          <option>1997</option>
        </select>
      </div>
      <div class="control-group">
        <div class="controls">
          <button type="submit" class="btn" name="submit" onclick="return myfunction()">Submit</button>
          <input type="reset" class="btn">
        </div>
      </div>
      <div id="js"></div>
    </form>
  </center>
</div>

提问于
用户回答回答于

可以试试setTimeOut函数:

function appearing(){
  document.getElementById("inner").innerHTML = "Paragraph changed!";
  setTimeout(function(){ 
      document.getElementById("inner").innerHTML = "";
  }, 5000);
}
<a href='#' onClick='appearing()'>Appear and disapper after 5 seconds</a>
<div id='inner'></div>

用户回答回答于

你将需要使用setTimeout()功能。

此代码应适用于你的情况:

function myfunction() {
    var x = document.forms["forma"]["emri"].value;
    var x1 = document.forms["forma"]["mbiemri"].value;
    var x2 = document.forms["forma"]["email"].value;
    var x3 = document.forms["forma"]["vendbanimi"].value;   
    if ((x == null || x == "") || (x1 == null || x1 == "") || (x2 == null || x2 == "") || (x3 == null || x3 == "") ) {
    document.getElementById("js").innerHTML = "Ju lutem ploresojini te gjitha te dhenat";
    return false;
    }
    if (x2.indexOf("@") < 1) {
        document.getElementById("js").innerHTML = "Ju lutem insertoni nje email te sakte";
    return false;
    }   
    setTimeout(functionToDisappearInnerHTML(), 5000); //Sets a timer that starts the function in 5 seconds (5000 milliseconds)
}

function functionToDisappearInnerHTML() {
    document.getElementById("js").innerHTML = ""; //Clears the innerHTML
}

所属标签

可能回答问题的人

  • 嗨喽你好

    7 粉丝480 提问9 回答
  • uncle_light

    5 粉丝518 提问7 回答
  • 人生的旅途

    10 粉丝484 提问7 回答
  • Richel

    4 粉丝0 提问6 回答

扫码关注云+社区

领取腾讯云代金券