JavaScript 操作表单

html 表单的输入控件

  • 文本框,用于输入文本。<input type="text">
  • 口令框,用于输入口令。<input type="password">
  • 单选框,用于选择一项。<input type="radio">
  • 复选框,用于选择多项。<input type="checkbox">
  • 下拉框,用于多选一。<select>
  • 隐藏文本,用户不可见,但表单提交时会把隐藏文本发送到服务器。<input type="hidden">

html5 控件

  • 日期控件。<input type="date" value="2021-05-10">
  • 日期时间控件。<input type="datetime-local" value="2021-05-10T02:03:04">
  • 颜色选择器控件。<input type="color" value="#ff0000">

获取值


<input type="text" id="email">

获取对应用户输入值


let input = document.getElementById('email');
input.value;  // 返回用户输入的值

这种方式可以获取 textpasswordhiddenselect 类型的表单,但是要是想获取 radio 或者 select 则需要通过 checked 判断


<label><input type="radio" name="weekday" id="monday" value="1"> Monday</label>
<label><input type="radio" name="weekday" id="tuesday" value="2"> Tuesday</label>

let mon = document.getElementById('monday');
let tue = document.getElementById('tuesday');
mon.value;  // "1"
tue.value;  // "2"
mon.checked;  // true 或者 false
tue.checked;  // true 或者 false

设置值


<input type="text" id="email">

获取对应用户输入值


let input = document.getElementById('email');
input.value = 'demo@example.com';  // 设置文本框的内容

提交表单

submit()


<!-- HTML -->
<form id="test-form">
    <input type="text" name="test">
    <button type="button" onclick="doSubmitForm()">Submit</button>
</form>

<script>
function doSubmitForm() {
    let form = document.getElementById('test-form');

    form.submit();
}
</script>

onsubmit()


<!-- HTML -->
<form id="test-form" onsubmit="return checkForm()">
    <input type="text" name="test">
    <button type="submit">Submit</button>
</form>

<script>
function checkForm() {
    let form = document.getElementById('test-form');

    return true;  // 返回 true 表示提交表单,返回 false 将不会提交表单
}
</script>

results matching ""

    No results matching ""