javascript - 如何在html表单中排除少数输入
问题描述
有一个带有 2 个输入的表单和一个用于重置输入的按钮。单击按钮时,如何使第一个输入保持不变(即它不应该重置值)。我怎样才能实现它?
<!DOCTYPE html>
<html lang="en">
<head>
<title>Add-More example - fileuploader - Innostudio.de</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1"></script>
</head>
<body>
<div class="file-loading" style="margin: 50px;">
<form>
<input id="no_reset" type="text">
<input id="input-fa" type="text">
<button type="reset" onclick="removeReset()">
<i class="fas fa-sync"></i>submit
</button>
</form>
</div>
<script>
function removeReset() {
//it doesn't work
document.getElementById("no_reset").value = "dont reset";
}
</script>
</body>
</html>
解决方案
如果您有大量输入,则可以重置所有字段,但具有自定义属性的字段除外。
看一个示例 vanilla js 实现:
function customReset()
{
var fieldsToReset = document.querySelectorAll("input:not([data-noreset='true'])")
for(var i=0;i<fieldsToReset.length;i++){
fieldsToReset[i].value = null;
}
}
<form id="myForm">
<input id="txt1" name="txt1" /> : should reset<br/>
<input id="txt2" name="txt2" /> : should reset<br/>
<input id="txt3" name="txt3" /> : should reset<br/>
<input id="txt4" name="txt4" data-noreset="true" /> : <strong>won't reset</strong><br/>
<button type="button" onclick="customReset()">
Reset
</button>
</form>
注意type="button"
属性。这既不需要重置表单也不需要提交。
推荐阅读
- python - python 点在 3d 绘图上用错误的坐标绘制
- tsql - T-SQL 查询:如何插入最后 5 条消息的平均值
- r - 用条件替换 NA
- node.js - Hyperledger Fabric 1.4:如何从 Fabric 节点 SDK 测试和验证 registerChaincodeEvent 函数?
- php - 使用 Laravel/Android 从用户到用户的通知
- reactjs - 使用 react-admin 构建两级资源
- google-sheets - Google 表格 YouTube 链接和名称
- javascript - 无法运行 document.execCommand('copy); 在Javascript中
- r - 网页抓取 - 代码适用于一个站点但不适用于另一个站点
- java - 数据库连接数与 Java 线程数