IE11 不会在表单重置后重新验证表单
IE11 not re-validating form after form reset
我正在使用 HTML5 表单验证并在 IE11 中发现了一个奇怪的问题。 Chrome、Firefox、Opera 或 Edge 中未出现此问题。
基本上,IE11 似乎无法正确执行表单重置。我希望通过重置表单来清除所有验证错误并将表单值重置为初始值。在下一次提交时,我希望表单重新验证。
在表单重置期间似乎只重置了值 - 除非用户更改字段,否则验证错误状态(甚至验证成功)似乎仍然存在。
对于我的 Web 应用程序,我能看到的唯一解决方法是重新加载页面而不是执行表单重置。还有其他想法吗?
工作流程如下:
- 使用 IE11,从必填输入字段中删除文本。
- 点击提交,出现验证错误。
- 点击重置,输入字段值returns为初始值。
- 点击提交,验证错误,但该字段已使用初始值填写。
<!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>
我能够产生这个问题,但不幸的是没有任何解决方案可用于此特定问题。
您可以尝试使用变通方法,例如先将文本框值设置为空,然后使用 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>
我正在使用 HTML5 表单验证并在 IE11 中发现了一个奇怪的问题。 Chrome、Firefox、Opera 或 Edge 中未出现此问题。
基本上,IE11 似乎无法正确执行表单重置。我希望通过重置表单来清除所有验证错误并将表单值重置为初始值。在下一次提交时,我希望表单重新验证。
在表单重置期间似乎只重置了值 - 除非用户更改字段,否则验证错误状态(甚至验证成功)似乎仍然存在。
对于我的 Web 应用程序,我能看到的唯一解决方法是重新加载页面而不是执行表单重置。还有其他想法吗?
工作流程如下:
- 使用 IE11,从必填输入字段中删除文本。
- 点击提交,出现验证错误。
- 点击重置,输入字段值returns为初始值。
- 点击提交,验证错误,但该字段已使用初始值填写。
<!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>
我能够产生这个问题,但不幸的是没有任何解决方案可用于此特定问题。
您可以尝试使用变通方法,例如先将文本框值设置为空,然后使用 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>