Javascript 如何使用java脚本获取倒数第二个元素

Javascript 如何使用java脚本获取倒数第二个元素,javascript,Javascript,我有7个选项的下拉列表。我需要使用java脚本获取倒数第二个选项的值。我写了一些东西,但它不起作用 $('.checkbox4').on('click', function(e) { var last_chekbox4 = $('.checkbox4:last.prev()'); if (last_chekbox4.is(':checked')) { $('.checkbox4').prop('checked', false); $(this).p

我有7个选项的下拉列表。我需要使用java脚本获取倒数第二个选项的值。我写了一些东西,但它不起作用

$('.checkbox4').on('click', function(e) {
    var last_chekbox4 = $('.checkbox4:last.prev()');
    if (last_chekbox4.is(':checked')) {
        $('.checkbox4').prop('checked', false);
        $(this).prop('checked', true);
    }
});

你有7个元素。使用类型的第n个选择器

$(".checkbox4:nth-of-type(6)");
要选择最后一个
选项,请使用
prev()
方法

$('.checkbox4:last').prev()
如果中间有其他元素,则使用

$('.checkbox4:last').prevAll('.checkbox4').first()
仅供参考:如果元素不是兄弟元素,则上述方法不起作用


更新: 或者使用
:not()
和jQuery
:last
获取排除最后一个的集合中的最后一个

$('.checkbox4:not(:last):last')
或者通过使用
eq()
方法的索引

var $col = $('.checkbox4');
// get element by index, where index starts from 0
var $ele = $col.eq($col.length - 2);

如果所有复选框位于同一容器中,则它们是同级复选框@Apurba:你能显示你的html吗?你有没有检查过你的控制台有没有错误,或者可能使用了
console.log(last_chekbox4)
来确保你的目标元素是正确的?@Pranav C如果所有的复选框都在同一个容器(例如div)中,这是唯一有效的吗?麦克:不,但它只会得到最后一个one@Mic:但如果两个元素不是同级,则可能会失败。。。。在这种情况下,需要使用第二种方法