如果未填写 command/specific 输入,则禁用所有其他输入
disable all other inputs if command/specific input not filled in
我正在尝试禁用特定表单“<form id="join">
”中的所有其他输入
如果用户没有先填写 <input type="text" id="userkey" name="userkey" />
输入,所有其他输入将保持禁用状态,直到“<form id="join">
”输入已填写。
这样做的原因是 模拟用户行为 因此他们会出于各种我不会的原因首先加入我们的 site discord进入。我知道这不是一种安全的方法。所有用户数据都将在服务器端进行清理和验证,以保护 site/database。我知道可以绕过这个并仍然提交数据,再次用户数据将在服务器端进行清理和验证以保护 site/database。我这样做是因为即使在会员表格上有一个巨大的注释,他们仍然试图提交数据并绕过加入不和谐,这使得与他们沟通变得困难。这是对网站进行白痴验证的尝试 - 它还会阻止大量垃圾邮件,因为垃圾邮件机器人通常无法加入不和谐。
这是一个非常简单的例子,我将从中推断出我们的实际会员形式。
这是htmt
<form id="join-membership">
user key
<br />
<input type="text" id="userkey" name="userkey" />
<br />
<p>If you do not have a user key, please <a href="#">join our discord</a> to get one</p>
Email
<br />
<input type="email" id="email" disabled="disabled" />
<br />
Username
<br />
<input type="text" id="username" name="username" disabled="disabled" />
<br />
Password
<br />
<input type="password" id="pass" name="password" disabled="disabled" />
<br />
Confirm Password
<br />
<input type="password" id="pass2" name="password2" disabled="disabled" />
<br />
About You
<br />
<textarea id="about" name="about" disabled="disabled"></textarea>
<br />
<input type="submit" id="submit" value="Register" disabled="disabled" />
</form>
<div id="test"></div>
这里是 JavaScript
<script>
(function() {
$('form > input').keyup(function() {
var email = true;
var empty = false;
$('form > input').each(function() {
if ($(this).val() == '') {
empty = true;
}
});
if (email == empty) {
$('#register').attr('disabled', 'disabled');
} else {
$('#register').removeAttr('disabled');
}
});
})()
</script>
请注意,我是 JavaScript 和网络的超级新手,已经研究并找到了禁用提交按钮的脚本,但我们的表单有点复杂,我不希望用户尝试填写它以找出即使他们没有阅读说明也无法提交。这是模范用户行为,我希望从长远来看能提供更好的用户体验。
感谢您提供的任何帮助。
您好,您可以尝试这样的操作
(function() {
$("#userkey").keyup(function() {
const userkey = this.value;
if (userkey) {
$('.other-inputs input, .other-inputs textarea').removeAttr('disabled');
} else {
$('.other-inputs input, .other-inputs textarea').attr('disabled', 'disabled');
}
});
})()
在用户键输入更改时,该函数正在检查 userkey
输入中是否存在值(如果存在)它将从 div [=] 中的输入中删除 disabled
属性13=]
在此处查看示例:https://jsfiddle.net/t4ub0xs3/
我正在尝试禁用特定表单“<form id="join">
”中的所有其他输入
如果用户没有先填写 <input type="text" id="userkey" name="userkey" />
输入,所有其他输入将保持禁用状态,直到“<form id="join">
”输入已填写。
这样做的原因是 模拟用户行为 因此他们会出于各种我不会的原因首先加入我们的 site discord进入。我知道这不是一种安全的方法。所有用户数据都将在服务器端进行清理和验证,以保护 site/database。我知道可以绕过这个并仍然提交数据,再次用户数据将在服务器端进行清理和验证以保护 site/database。我这样做是因为即使在会员表格上有一个巨大的注释,他们仍然试图提交数据并绕过加入不和谐,这使得与他们沟通变得困难。这是对网站进行白痴验证的尝试 - 它还会阻止大量垃圾邮件,因为垃圾邮件机器人通常无法加入不和谐。
这是一个非常简单的例子,我将从中推断出我们的实际会员形式。
这是htmt
<form id="join-membership">
user key
<br />
<input type="text" id="userkey" name="userkey" />
<br />
<p>If you do not have a user key, please <a href="#">join our discord</a> to get one</p>
Email
<br />
<input type="email" id="email" disabled="disabled" />
<br />
Username
<br />
<input type="text" id="username" name="username" disabled="disabled" />
<br />
Password
<br />
<input type="password" id="pass" name="password" disabled="disabled" />
<br />
Confirm Password
<br />
<input type="password" id="pass2" name="password2" disabled="disabled" />
<br />
About You
<br />
<textarea id="about" name="about" disabled="disabled"></textarea>
<br />
<input type="submit" id="submit" value="Register" disabled="disabled" />
</form>
<div id="test"></div>
这里是 JavaScript
<script>
(function() {
$('form > input').keyup(function() {
var email = true;
var empty = false;
$('form > input').each(function() {
if ($(this).val() == '') {
empty = true;
}
});
if (email == empty) {
$('#register').attr('disabled', 'disabled');
} else {
$('#register').removeAttr('disabled');
}
});
})()
</script>
请注意,我是 JavaScript 和网络的超级新手,已经研究并找到了禁用提交按钮的脚本,但我们的表单有点复杂,我不希望用户尝试填写它以找出即使他们没有阅读说明也无法提交。这是模范用户行为,我希望从长远来看能提供更好的用户体验。
感谢您提供的任何帮助。
您好,您可以尝试这样的操作
(function() {
$("#userkey").keyup(function() {
const userkey = this.value;
if (userkey) {
$('.other-inputs input, .other-inputs textarea').removeAttr('disabled');
} else {
$('.other-inputs input, .other-inputs textarea').attr('disabled', 'disabled');
}
});
})()
在用户键输入更改时,该函数正在检查 userkey
输入中是否存在值(如果存在)它将从 div [=] 中的输入中删除 disabled
属性13=]
在此处查看示例:https://jsfiddle.net/t4ub0xs3/