几个select框重复值比较
Several select box duplicate values compare
我想比较 select 框 selected 选项值,如果 select 框中有重复值我想显示警报:
alert("Duplicate value!");
这是我的代码:
<select class="examSelect">
<option value="one">ba</opion>
<option value="two">woo</opion>
<option value="three">coo</opion>
<option value="four">po</opion>
</select>
<select class="examSelect">
<option value="one">ba</opion>
<option value="two">woo</opion>
<option value="three">coo</opion>
<option value="four">po</opion>
</select>
<select class="examSelect">
<option value="one">ba</opion>
<option value="two">woo</opion>
<option value="three">coo</opion>
<option value="four">po</opion>
</select>
你可以使用这样的东西来比较所有三个 select ..下一个代码将检查它们是否都具有相同的值 alert yes .. make if statements you need
$(document).ready(function(){
$('.examSelect').on('change',function(){
var examSelect0 = $('.examSelect').eq(0).val();
var examSelect1 = $('.examSelect').eq(1).val();
var examSelect2 = $('.examSelect').eq(2).val();
if(examSelect0 == examSelect1 && examSelect1 == examSelect2){
alert('yes');
}
});
});
如果值在其中 2 个上重复,您可以使用此 if 语句
if(examSelect0 == examSelect1 || examSelect1 == examSelect2 || examSelect0 == examSelect2){
alert("Duplicate value!");
}
这是一种使用对象属性的方法。它在第一次看到它时创建 属性,如果它第二次看到相同的值,它会爆发并发出警报。
这可以很容易地修改以维护重复项的计数,例如"You entered 'woo' for 3 different selections!"
由于它使用 jQuery each()
来调查每个匹配的下拉列表,因此无需修改即可扩展 HTML 中的其他 select 框。
function checkit() {
var checker = {};
$(".examSelect").each(function() {
var selection = $(this).val();
if ( checker[selection] ) {
//if the property is defined, then we've already encountered this value
alert("Duplicate(s) detected!");
return false;
} else {
//first time we've seen this value, so let's define a property for it
checker[selection] = true;
}
});
console.log(checker); //remove this in production
}
我想比较 select 框 selected 选项值,如果 select 框中有重复值我想显示警报:
alert("Duplicate value!");
这是我的代码:
<select class="examSelect">
<option value="one">ba</opion>
<option value="two">woo</opion>
<option value="three">coo</opion>
<option value="four">po</opion>
</select>
<select class="examSelect">
<option value="one">ba</opion>
<option value="two">woo</opion>
<option value="three">coo</opion>
<option value="four">po</opion>
</select>
<select class="examSelect">
<option value="one">ba</opion>
<option value="two">woo</opion>
<option value="three">coo</opion>
<option value="four">po</opion>
</select>
你可以使用这样的东西来比较所有三个 select ..下一个代码将检查它们是否都具有相同的值 alert yes .. make if statements you need
$(document).ready(function(){
$('.examSelect').on('change',function(){
var examSelect0 = $('.examSelect').eq(0).val();
var examSelect1 = $('.examSelect').eq(1).val();
var examSelect2 = $('.examSelect').eq(2).val();
if(examSelect0 == examSelect1 && examSelect1 == examSelect2){
alert('yes');
}
});
});
如果值在其中 2 个上重复,您可以使用此 if 语句
if(examSelect0 == examSelect1 || examSelect1 == examSelect2 || examSelect0 == examSelect2){
alert("Duplicate value!");
}
这是一种使用对象属性的方法。它在第一次看到它时创建 属性,如果它第二次看到相同的值,它会爆发并发出警报。
这可以很容易地修改以维护重复项的计数,例如"You entered 'woo' for 3 different selections!"
由于它使用 jQuery each()
来调查每个匹配的下拉列表,因此无需修改即可扩展 HTML 中的其他 select 框。
function checkit() {
var checker = {};
$(".examSelect").each(function() {
var selection = $(this).val();
if ( checker[selection] ) {
//if the property is defined, then we've already encountered this value
alert("Duplicate(s) detected!");
return false;
} else {
//first time we've seen this value, so let's define a property for it
checker[selection] = true;
}
});
console.log(checker); //remove this in production
}