第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我的 Javascript 中的 HTML 表單驗證器似乎不起作用

我的 Javascript 中的 HTML 表單驗證器似乎不起作用

www說 2022-07-01 16:10:29
我已經(jīng)為我的 HTML 編寫了一個驗證器,盡管我不確定我哪里出錯了。我在下面要做的是確定“名字”框中是否有任何文本。代碼中有底層的 css,但我相信我的問題是圍繞我的 onsubmit 和 validate 函數(shù),因為一旦我單擊提交按鈕,javascript 中似乎沒有任何東西在運行。<!doctype html><html><head>    <meta charset="utf-8">  <title>NewPatientForm</title>  <link rel="stylesheet" type="text/css" href="NewPatient.css">    <script>    function validate() {    var invalid = false;    if(!document.Firstname.value.length) {        invalid = true;    }      if(invalid) {        document.getElementById("form-error").style.display = "inline-block";        return false; //to make the text appear    }    return true;}  </script></head><body>  <form id="NewPatientForm" method="post" action="#" onsubmit="return  validate();">  <div class="form-element">  <p id="form-error">All fields are required</p>  </div>    <div>  <label for="Firstname">First Name  <input type="text" name="Firstname" placeholder="First Name" id="Firstname">  </label>  </div>  <div>  <input type="submit" name="submit-button" value="Submit">  </div>  </form></body></html>
查看完整描述

2 回答

?
楊魅力

TA貢獻(xiàn)1811條經(jīng)驗 獲得超6個贊

看起來罪魁禍?zhǔn)资悄噲D訪問Firstname該document對象。


我用更標(biāo)準(zhǔn)的document.getElementById()方法和它的工作替換了它。


一些閱讀:Do DOM tree elements with ids become global variables?


function validate() {

  var invalid = false;


  if(!document.getElementById('Firstname').value.length) {

      invalid = true;

  }


  if(invalid) {

      document.getElementById("form-error").style.display = "inline-block";

      return false;

  }

  return true;

}

#form-error {

  display: none;

}

<form id="NewPatientForm" method="post" action="#" onsubmit="return validate()">

  <div class="form-element">

    <p id="form-error">All fields are required</p>

  </div>

  

  <div>

    <label for="Firstname">First Name

    <input type="text" name="Firstname" placeholder="First Name" id="Firstname">

    </label>

  </div>


  <div>

    <input type="submit" name="submit-button" value="Submit">

  </div>

</form>


查看完整回答
反對 回復(fù) 2022-07-01
?
墨色風(fēng)雨

TA貢獻(xiàn)1853條經(jīng)驗 獲得超6個贊

有幾個錯別字,我也會提出其他建議。首先,代碼中的一個或三個修復(fù):


<!doctype html>


<html>

<head>

  <meta charset="utf-8">

  <title>NewPatientForm</title>


  <script>

    function validate() {

      const invalid = document.getElementById("Firstname").value.length == 0;

      if(invalid) {

        document.getElementById("form-error").style.display = "inline-block";

        return false; //to make the text appear

      }

      return true;

    }


  </script>

</head>

<body>

<form id="NewPatientForm" method="post" action="#" onsubmit="return validate();">

    <div class="form-element">

        <p id="form-error">All fields are required</p>

    </div>


    <div>

        <label for="Firstname">First Name

            <input type="text" name="Firstname" placeholder="First Name" id="Firstname">

        </label>

    </div>


    <div>

        <input type="submit" name="submit-button" value="Submit">

    </div>

</form>

</body>

</html>

我的建議是您還可以查看內(nèi)置的 HTML 表單驗證屬性。我認(rèn)為您正在重新發(fā)明輪子,例如要求非空名字。為什么不用這個而不是 JavaScript?


<input type="text" name="Firstname" id="Firstname" placeholder="First Name" required />

還有很多其他的,比如 minlength=""、min=""、step="" 等。


此外,還有一個帶有 .checkValidity() 的驗證系統(tǒng)中的 JavaScript 掛鉤,因此您可以讓內(nèi)置驗證完成繁重的工作,然后也加入更多您自己的自定義方面。


查看完整回答
反對 回復(fù) 2022-07-01
  • 2 回答
  • 0 關(guān)注
  • 181 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號