Javascript 如何检查是否已连续两次选择相同的下拉列表选项?

Javascript 如何检查是否已连续两次选择相同的下拉列表选项?,javascript,select-options,Javascript,Select Options,让我们假设我有一个简单的下拉列表,我可以从中自由选择我想要的任何选项 我可以通过JavaScript将所选选项的值以如下方式存储在变量中: var checkValue=function(){ const mySelect=document.getElementById(“cars”); 让currentValue=mySelect.options[mySelect.selectedIndex].value; console.log(当前值); } 沃尔沃汽车 萨博 欧宝 奥迪 您可能正在查

让我们假设我有一个简单的下拉列表,我可以从中自由选择我想要的任何选项

我可以通过JavaScript将所选选项的值以如下方式存储在变量中:

var checkValue=function(){
const mySelect=document.getElementById(“cars”);
让currentValue=mySelect.options[mySelect.selectedIndex].value;
console.log(当前值);
}

沃尔沃汽车
萨博
欧宝
奥迪

您可能正在查找onclick事件,然后检查该值是否相同:

var checkValue=function(){
让mySelect=document.getElementById(“cars”).options;
让currentValue=mySelect[mySelect.selectedIndex].value;
如果(currentValue==以前的值){
log(“选择了相同的选项”);
}否则{
console.log(“不同选项”);
}
previousValue=当前值;
}
让select=document.getElementById(“cars”).options;
让previousValue=选择[select.selectedIndex].value

沃尔沃汽车
萨博
欧宝
奥迪

您可能正在查找onclick事件,然后检查该值是否相同:

var checkValue=function(){
让mySelect=document.getElementById(“cars”).options;
让currentValue=mySelect[mySelect.selectedIndex].value;
如果(currentValue==以前的值){
log(“选择了相同的选项”);
}否则{
console.log(“不同选项”);
}
previousValue=当前值;
}
让select=document.getElementById(“cars”).options;
让previousValue=选择[select.selectedIndex].value

沃尔沃汽车
萨博
欧宝
奥迪

一行中两次触发元素select事件的一个例子可能是添加click事件而不是change事件,我正在考虑,但如果已经选中了选项change,则在侦听选项change时似乎不会触发此事件

var activities=document.getElementById(“activitySelector”);
activities.addEventListener(“单击”,函数(){
console.log('selected item');
});

项目
选择1

一行中两次触发元素select事件的一个例子可能是添加click事件而不是change事件,我正在考虑,但如果已经选中了选项change,则在侦听选项change时似乎不会触发此事件

var activities=document.getElementById(“activitySelector”);
activities.addEventListener(“单击”,函数(){
console.log('selected item');
});

项目
选择1
var arr=[];
var checkValue=函数(){
const mySelect=document.getElementById(“cars”);
让currentValue=mySelect.options[mySelect.selectedIndex].value;
如果($.inArray(当前值,arr)!=“-1”){
console.log(“已选择”);
}否则{
arr.push(当前值);
console.log(当前值);
}
}

沃尔沃汽车
萨博
欧宝
奥迪
var arr=[];
var checkValue=函数(){
const mySelect=document.getElementById(“cars”);
让currentValue=mySelect.options[mySelect.selectedIndex].value;
如果($.inArray(当前值,arr)!=“-1”){
console.log(“已选择”);
}否则{
arr.push(当前值);
console.log(当前值);
}
}

沃尔沃汽车
萨博
欧宝
奥迪

您不能连续两次选择同一选项。例如,如果您选择了
Saab
,那么下次您必须通过选择其他值(如
Opel
)来取消选择它,然后只有您可以再次选择
Saab
。。因此,控制台日志将类似于
Saab
Opel
Saab
当前值的值将始终更改,因为选择,如果您单击同一选项,它将不会触发
onChange
事件您不能连续两次选择同一选项。例如,如果您选择了
Saab
,那么下次您必须通过选择其他值(如
Opel
)来取消选择它,然后只有您可以再次选择
Saab
。。因此,控制台日志将类似于
萨博
欧宝
萨博
当前值
的值将始终更改,因为选择,如果您单击相同的选项,它将不会触发
一旦更改
事件您可以控制台.log“选择相同的选项”吗如果连续两次选择相同的下拉列表选项?请检查我的上次更新,它会记录值是否相同。它记录是否在一行中选择了两次选项(相同值)或未选择(不同值)。如果在一行中选择了两次相同的下拉列表选项,是否可以console.log“选择了相同的选项”?检查我的上次更新,它会在相同值或不相同时记录。它记录是否在行中两次选择该选项(相同值)或未选择该选项(不同值)。我的问题指定“在行中两次”。换句话说,如果你选择了一个已经被选中的选项,我的问题指定“一行两次”。换句话说,如果您选择了一个已选择的选项。