JavaScript怎麼使用ajax操作表單
Mar 31, 2018 pm 01:40 PM
ajax
javascript
js
這次帶給大家JavaScript怎麼使用ajax操作表單,JavaScript使用ajax操作表單的注意事項有哪些,以下就是實戰案例,一起來看一下。
用JavaScript操作表單和操作DOM是類似的,因為表單本身也是DOM樹。
不過表單的輸入框、下拉框等可以接收使用者輸入,所以用JavaScript來操作表單,可以得到使用者輸入的內容,或是對一個輸入框設定新的內容。
HTML表單的輸入控制項主要有以下幾種:
- ##文字方塊,對應的<input type="text">,用於輸入文本;
- #口令框,對應的<input type="password">,用於輸入口令;
- 單選框,對應的<input type="radio">,用於選擇一項;
-
- 下拉框,對應的< ;select>,用於選擇一項;
- 隱藏文本,對應的<input type="hidden">,使用者不可見,但表單提交時會把隱藏文字發送到伺服器。
取得值
#如果我們得到了一個<input>節點的引用,就可以直接呼叫value取得對應的使用者輸入值:// <input type="text" id="email"> var input = document.getElementById('email'); input.value; // '用户输入的值'
登入後複製
// <label><input type="radio" name="weekday" id="monday" value="1"> Monday</label> // <label><input type="radio" name="weekday" id="tuesday" value="2"> Tuesday</label> var mon = document.getElementById('monday'); var tue = document.getElementById('tuesday'); mon.value; // '1' tue.value; // '2' mon.checked; // true或者false tue.checked; // true或者false
登入後複製
設定值
設定值和取得值類似,對於text、password、hidden以及select,直接設定value就可以:// <input type="text" id="email"> var input = document.getElementById('email'); input.value = 'test@example.com'; // 文本框的内容已更新
登入後複製
HTML5控件
HTML5新增了大量標準控件,常用的包括date、datetime、datetime-local、color等,它們都使用<input>標籤:<input type="date" value="2015-07-01"> <input type="datetime-local" value="2015-07-01T02:03:04"> <input type="color" value="#ff0000">
登入後複製
提交表單
最後,JavaScript可以用兩種方式來處理表單的提交(AJAX方式在後面介紹)。 方式一是透過<form>元素的submit()方法提交表單,例如,回應一個<button>的click事件,在JavaScript程式碼中提交表單:<!-- HTML --> <form id="test-form"> <input type="text" name="test"> <button type="button" onclick="doSubmitForm()">Submit</button> </form> <script> function doSubmitForm() { var form = document.getElementById('test-form'); // 可以在此修改form的input... // 提交form: form.submit(); } </script>
登入後複製
<!-- HTML --> <form id="test-form" onsubmit="return checkForm()"> <input type="text" name="test"> <button type="submit">Submit</button> </form> <script> function checkForm() { var form = document.getElementById('test-form'); // 可以在此修改form的input... // 继续下一步: return true; } </script>
登入後複製
錯誤訊息後終止提交form。
在檢查和修改<input>時,要充分利用<input type="hidden">來傳遞資料。 例如,許多登入表單希望使用者輸入使用者名稱和口令,但是,安全考慮,提交表單時不傳輸明文口令,而是口令的MD5。普通JavaScript開發人員會直接修改<input>:<!-- HTML --> <form id="login-form" method="post" onsubmit="return checkForm()"> <input type="text" id="username" name="username"> <input type="password" id="password" name="password"> <button type="submit">Submit</button> </form> <script> function checkForm() { var pwd = document.getElementById('password'); // 把用户输入的明文变为MD5: pwd.value = toMD5(pwd.value); // 继续下一步: return true; } </script>
登入後複製
要想不改变用户的输入,可以利用<input type="hidden">实现:
<!-- HTML --> <form id="login-form" method="post" onsubmit="return checkForm()"> <input type="text" id="username" name="username"> <input type="password" id="input-password"> <input type="hidden" id="md5-password" name="password"> <button type="submit">Submit</button> </form> <script> function checkForm() { var input_pwd = document.getElementById('input-password'); var md5_pwd = document.getElementById('md5-password'); // 把用户输入的明文变为MD5: md5_pwd.value = toMD5(input_pwd.value); // 继续下一步: return true; } </script>
登入後複製
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
以上是JavaScript怎麼使用ajax操作表單的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)