gpt4 book ai didi

jQuery 优雅的方式查看所有输入字段是否不同

转载 作者:行者123 更新时间:2023-12-03 22:58:51 25 4
gpt4 key购买 nike

我有一个包含十几个电子邮件输入字段的表单,并且每封电子邮件都需要是唯一的。通过jquery执行所有字段之间的比较而不需要手动编写所有比较的最优雅的方法是什么,如下所示:

if($("#email1").val() == $("#email2").val() || ....)  {
isValid = false;
alert("emails must be unique.");
}

提前致谢!

最佳答案

最简单的方法是将电子邮件放入Set中,并比较其大小:

const $inputs = $('input[id^=email]');

const uniques = new Set($input.map((i, el) => el.value).get());

if (uniques.size < $inputs.length) {
alert('Emails must be unique.');
}
<小时/>

如果您无法使用 ES6(或其他现代 JS 功能),请使用 jQuery 的 inArray :

var values = [];

$('input[id^=email]').each(function () {
if ($.inArray(this.value, values) >= 0) {
alert('Emails must be unique.');

return false; // <-- stops the loop
}

values.push(this.value);
});
<小时/>

如果该选择器太宽泛,您可以在逗号分隔列表中指定您的 ID,如下所示:

$('#email1, #email2, #email3') // ...and so on

或者只是向您要选择的所有元素添加一个类...

关于jQuery 优雅的方式查看所有输入字段是否不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10553866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com