我成功使用强制代码从下拉字段中删除重复值
$(document).ready(function () {
var usedNames = {};
$("select > option").each(function () {
if (usedNames[this.value]) {
$(this).remove();
} else {
usedNames[this.value] = this.text;
}
});
});
我的问题是我的一些下拉是有条件的,所以当代码触发时它们不在页面上,它们被设置为显示:隐藏,输入隐藏,然后根据之前的下拉选项显示它们。
那么当下拉列表出现时如何触发代码?
答案 0 :(得分:1)
如果您无法在下拉列表设置为可见的情况下添加代码,则唯一的解决方案可能是设置重复计时器以不断检查。
var interval = setInterval(function(){
// Check to see if the thing is still hidden
if(!$("#id_of_option").is(':hidden')){
clearInterval(interval); // stop checking
// Run your other code here to clear out duplicates
}
}, 200); // or some number of milliseconds