Javascript 如何使用类选择器根据其同级select的更改事件更新标签

Javascript 如何使用类选择器根据其同级select的更改事件更新标签,javascript,jquery,Javascript,Jquery,我必须使用具有相同选项的多个select元素。我必须添加一个on chage事件侦听器,该侦听器将侦听这些类似选择中的任何更改。但我只想使用类选择器而不是id来计算实际更改其选项的select的实际同级标签。不知怎的,我计算出实际更改其选项的选择的id。但是,“更改时”事件正在更新两个标签。这对我来说太棘手了。请记住,我将对同一事件使用太多选择。因此我无法使用id选择器。请帮助 $('.p-select')。在('change',function()上{ //警报(this.id); var

我必须使用具有相同选项的多个select元素。我必须添加一个on chage事件侦听器,该侦听器将侦听这些类似选择中的任何更改。但我只想使用类选择器而不是id来计算实际更改其选项的select的实际同级标签。不知怎的,我计算出实际更改其选项的选择的id。但是,“更改时”事件正在更新两个标签。这对我来说太棘手了。请记住,我将对同一事件使用太多选择。因此我无法使用id选择器。请帮助

$('.p-select')。在('change',function()上{
//警报(this.id);
var eid=“#”+this.id+”;
警报('eid:'+eid);
$(eid).sides(“.p-label”).html($(“.p-select选项:选定”).text();
});

沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪

在选择
选项的文本以及选择
.sibling()
元素时,使用当前元素上下文,即

$('.p-select').on('change', function () {
    $(this).siblings(".p-label").html($("option:selected", this).text());
    //$(this).prev(".p-label").html($("option:selected", this).text());    
    //$(this).closest('div').find(".p-label").html($("option:selected", this).text()); 
});
$('.p-select')。在('change',function()上{
$(this.sides(“.p-label”).html($($(“选项:选中”,this.text());
});

沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪

在选择
选项的文本以及选择
.sibling()
元素时,使用当前元素上下文,即

$('.p-select').on('change', function () {
    $(this).siblings(".p-label").html($("option:selected", this).text());
    //$(this).prev(".p-label").html($("option:selected", this).text());    
    //$(this).closest('div').find(".p-label").html($("option:selected", this).text()); 
});
$('.p-select')。在('change',function()上{
$(this.sides(“.p-label”).html($($(“选项:选中”,this.text());
});

沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪

检查以下解决方案:

$('.p-select')。在('change',function()上{
var,该值=$(此值);
var newLabel=that.find('option:selected').text();
最接近的('div').children('label').html(newLabel);
});

沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪

检查以下解决方案:

$('.p-select')。在('change',function()上{
var,该值=$(此值);
var newLabel=that.find('option:selected').text();
最接近的('div').children('label').html(newLabel);
});

沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪
您也可以使用
.closest()

$('.p-select').on('change', function () {
    $(this).closest(".p-label").html($(this).find("option:selected").text());
});
您还可以使用
.nestest()

$('.p-select').on('change', function () {
    $(this).closest(".p-label").html($(this).find("option:selected").text());
});