Javascript 当用户单击表单以外的任何位置时,清除表单字段
我创建了一个表单I wan,当用户单击表单之外的任何位置时,可以清除所有字段。当用户在表单外单击时,是否可以重置字段?如何操作。您可以使用Javascript 当用户单击表单以外的任何位置时,清除表单字段,javascript,jquery,Javascript,Jquery,我创建了一个表单I wan,当用户单击表单之外的任何位置时,可以清除所有字段。当用户在表单外单击时,是否可以重置字段?如何操作。您可以使用.reset()和事件。当前目标在中单击事件处理程序设置在文档中 document.onclick = e => { if (e.currentTarget !== document.forms[0]) document.forms[0].reset() } 使用jquery,您可以: 处理文档单击 获得点击的目标 如果目标不是表单,则触
.reset()
和事件。当前目标在中单击事件处理程序设置在文档中
document.onclick = e => {
if (e.currentTarget !== document.forms[0])
document.forms[0].reset()
}
使用jquery,您可以:
- 处理文档单击
- 获得点击的目标
- 如果目标不是表单,则触发表单的重置事件
触发重置事件比逐个重置所有元素更有效。此触发事件将重置所有表单元素,如文本输入、文本区域、复选框、单选按钮
$(document).click(function (e) {
var target = e.target;
if (!$(target).is('#formID') && !$(target).parents().is('#formID')) {
$('#formID').trigger("reset");
}
});
这很有效
$(“html,正文”)。单击(函数(e){
变量形式=$(“#形式一”);
如果(例如,目标!==表格[0])
{
表单[0]。重置();
}
})
#formdiv
{
身高:100%
宽度:100%;
背景:红色;
保证金:0;
}
#formone
{
高度:100px;
宽度:200px;
背景:黄色;
填充:10px;
}
姓名:
这里有javascript代码,
小提琴:
html
请提供一些html来澄清您的问题?
<div id="wrapper">
<form action="" id="sanzform">
<input type="text" />
<input type="text" />
</form>
</div>
var body = document.getElementById('wrapper');
var sanzform = document.getElementById('sanzform');
body.addEventListener("click", function () {
alert("reset");sanzform.reset();}, false);
sanzform.addEventListener("click", function (ev) {ev.stopPropagation();}, false);