我有这个代码,我删除了我的第一个“选项”,因为第一个“请选择:”。无论如何,问题是,当我专注于我的第一个“选择”时,它会从每个选择中删除第一个“选项”。如何将其从当前关注的一个中删除?
$(document).ready(function(){
$('select').live('focus',function() {
$('.firstoption').remove();
});
});
答案 0 :(得分:0)
$(document).ready(function(){
$('select:first').on('focus',function() {
$(this).children("option:first").remove();
});
});
示例:http://jsfiddle.net/Ky6zq/2/
每次选择获得焦点时都会执行此操作,因此您每次都会继续删除元素。要防止出现此问题,请尝试:
$(document).ready(function(){
$('select:first').one('focus',function() {
$(this).children("option:first").remove();
});
});
答案 1 :(得分:0)
$(document).ready(function(){
$(document).on('focus', 'select', function() {
$('.firstoption', this).remove();
});
});
您应该使用已弃用的on()
的委托版本,而不是live()
。
确保为第一个选项使用类,以便每次选择获得焦点时不删除选项。