今天小編給大家分享一下JS表單提交submit()和onsubmit怎么使用的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
創新互聯公司專業為企業提供興海網站建設、興海做網站、興海網站設計、興海網站制作等企業網站建設、網頁設計與制作、興海企業網站模板建站服務,10年興海做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
通常表單的提交有兩種方式,一是直接通過html的form提交,代碼如下:
<form action="" method="" id="forms"> <input type="text" name="username" value="" /> <input type="password" name="pwd" value="" /> <input type="submit" value="提交"/></form>
但有時候我們會出于安全角度考慮,給用戶輸入的密碼進行加密,方法一就沒辦法解決這個問題,這時候我們同常會選擇另一種方法,使用javaScript來進行表單提交,代碼入下:
<!--HTML--><form action="" method="" id="test_form"> <input type="text" name="username" value="" /> <input type="password" name="pwd" value="" /> <button type="button" onclick='doSubmitForm()'>提交<button/></form><script>var form = document.getElementById('test_form');//再次修改input內容form.submit();</script>
這種方法有個缺點就是,打亂正常的表單提交程序,通常用戶輸入完成后點擊回車鍵就可以提交,但是這個方法實現不了,所以,使用下面的方法便可以解決這個問題,,通過form自身的onsubmit方法,來觸發提交,然后進行input的修改:
<!--HTML--><form id='test_form' action='' method='' omsubmit='return checkForm()'> <input type='text' name='username' value=''/> <input type='password' name='pwd' value =''/> <button type='submit'>提交<button/><form/><script>function checkForm(){ var form = document.getElementById('test_form'); //可在此修改input //進行下一步 return true; } <script/>
注意,checkForm()方法中,return true時,表單才會正常提交,為false時,瀏覽器將不會提交,通常是用戶的密碼輸入錯誤時,終止提交。
之前說過,為安全考慮用戶提交時,一般對密碼進行加密處理,代碼如下:
<!--HTML--><form id='test_form' action='' method='' omsubmit='return checkForm()'> <input type='text' name='username' value=''/> <input type='password' name='pwd' id='pwd' value =''/> <button type='submit'>提交<button/><form/><script>function checkForm(){ var pwd= document.getElementById('pwd'); pwd.value= toMD5(pwd.value); //進行下一步 return true; } <script/>
這種做法看上去沒問題,但是當用戶輸入完成后,提交會發現密碼框的 * 會由幾個瞬間變成 32個,這是由于MD5加密造成的(MD5有32個字符);如果想避免出現這種情況,需要充分利用到<input type='hidden'>,代碼如下:
<!--HTML--><form id='test_form' action='' method='' omsubmit='return checkForm()'> <input type='text' name='username' value=''/> <input type='password' id='input_pwd' value =''/> <input type='hidden' name='pwd' id='md5_pwd' value=''/> <button type='submit'>提交<button/><form/><script>function checkForm(){ var input_pwd= document.getElementById('input_pwd'); var md5_pwd= document.getElementById('md5_pwd'); md5_pwd.value= toMD5(input_pwd.value); //進行下一步 return true; } <script/>
注意,<input type='password'/>是用戶輸入密碼的input框并,沒有設置 name 屬性,而是給 <input type='hidden' /> 設置了 name='pwd',這樣表單提交只會提交帶有name屬性的輸入框,從而解決了上面的那個問題。
以上就是“JS表單提交submit()和onsubmit怎么使用”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注創新互聯行業資訊頻道。
新聞名稱:JS表單提交submit()和onsubmit怎么使用
瀏覽路徑:http://m.newbst.com/article40/ggpseo.html
成都網站建設公司_創新互聯,為您提供網站策劃、虛擬主機、做網站、App設計、手機網站建設、定制網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯