我正在使用HTML5表单验证,并在IE11中发现了一个奇怪的问题。这个问题在Chrome、Firefox、Opera或Edge中没有出现。
基本上,IE11似乎没有正确地执行表单重置。我希望表单重置能够清除所有验证错误,并将表单值重新设置为它们的初始值。在下一次提交时,我希望表单能够重新验证。
在表单重置过程中,似乎只有值被重置-验证错误状态(甚至是成功的验证)似乎仍然存在,除非用户更改该字段。
对于我的web应用程序,唯一的解决办法是重新加载页面,而不是执行表单重置。还有其他想法吗?
工作流程如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
</head>
<body>
<form id="theForm" name="theForm">
<input type="text" name="textBox" value="test" required>
<input type="submit">
<input type="reset">
</form>
</body>
</html>
发布于 2018-10-23 05:12:39
我能够提出这个问题,但不幸的是,没有任何解决办法可以解决这一具体问题。
您可以尝试使用工作,比如首先将textbox值设置为空,然后使用JS重置表单。
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function resetfrm()
{
document.getElementById("txt1").value='';
document.getElementById("theForm").reset();
alert("clear");
}
</script>
</head>
<body>
<form id="theForm" name="theForm">
<input type="text" name="textBox" id="txt1" value="test" required>
<input type="submit">
<input type="button" onclick="resetfrm()" value="Reset">
</form>
</body>
</html>
https://stackoverflow.com/questions/52932096
复制相似问题