如何获得复选框和下拉菜单的defaultValue
或value
?对于textbox和textarea,我使用:
HTML:
<input type="text" id="txtbox_id" class="input-text" />
<input type="checkbox" id="checkbox1" />
<br />
<select id="select" name="select">
<option value="Yes">Yes</option>
<option value="No">No</option>
</select>
使用Javascript:
function check() {
var default1 = document.getElementById("txtbox_id").defaultValue;
var change1 = document.getElementById("txtbox_id").value;
var default2 = document.getElementById("checkbox1").defaultValue;
var change2 = document.getElementById("checkbox1").value;
var default3 = document.getElementById("select").defaultValue;
var change3 = document.getElementById("select").value;
if (change1 == default1 && change2 == default2 && change3 == default3) {
alert('Not Changed!');
} else {
alert('Changed!');
}
}
我正在使用它来检查表单中的值是否已更改。但是当我使用此代码检查复选框和下拉列表时,我收到错误。请建议我采用正确的方法来实现这一目标。
答案 0 :(得分:4)
检查他们的属性。当用户修改表单时,它会影响属性,但属性保持不变。
var checkbox_defaultChecked = document.getElementById('some_checkbox').getAttribute("checked");
选择有点困难:
var selectbox_defaultOption = document.querySelector("#some_dropdown option[selected]");
请注意,旧浏览器需要垫片或更复杂的代码。
答案 1 :(得分:0)
表示复选框:
//检查是否选中了复选框,并返回true
和false
var default_checked = document.getElementById("checkbox_id").defaultChecked;
var checked_change = document.getElementById("checkbox_id").checked;
下拉列表:
//这会获取默认值并更改下拉列表的值
var select_ = document.querySelector('select[id="dropdown_id"] option[selected]');
var default_ = select1.value;
var change_ = document.getElementById("os_cd").value;