【问题标题】:How can I have a XNOR-like behaviour on required input?我怎样才能在所需的输入上有类似 XNOR 的行为?
【发布时间】:2022-08-16 23:44:19
【问题描述】:
我有以下表格:
<form>
<input type=\"text\" name=\"input1\">
<input type=\"text\" name=\"input2\">
<button type=\"submit\">submit</button>
</form>
使用 Bootstrap,我试图阻止用户只输入 1 个字段;即不输入任何内容都可以,输入两个字段都可以,输入一个字段但不输入另一个字段是不好的。
我阅读了Validation,但找不到解决问题的方法。
解决此问题的最佳方法是什么?
标签:
javascript
html
forms
bootstrap-5
【解决方案1】:
您可以将比较与空字符串进行比较,以判断它们是空的还是非空的。
document.querySelector("form").addEventListener("submit", e => {
let value1 = document.querySelector('[name=input1]').value;
let value2 = document.querySelector('[name=input2]').value;
if ((value1 == '') != (value2 == '')) {
e.preventDefault();
console.log('Fill in both inputs or neither');
} else {
e.preventDefault(); // just for snippet here
console.log('Form was submitted');
}
});
<form>
<input type="text" name="input1">
<input type="text" name="input2">
<button type="submit">submit</button>
</form>