jQuery使用ID获得最接近的DROPDOWN(SELECT)元素

时间:2014-05-01 09:26:55

标签: jquery web client-side development-environment

大家好 我试图获得最近的带有Id的下拉元素, 在页面上我有2个具有相同Id属性的元素, 现在我想在单击页面中的任何元素时选择最接近的那个

<select id="XYZ" .... >
<bla bla bla OTHER DOM ELEMENTS>
<select id="XYZ" ... >
<bla bla bla OTHER DOM ELEMENTS>
<btn="ABC" />

当我单击按钮时,我想获得最近的SELECT元素的值

提前感谢您的帮助

3 个答案:

答案 0 :(得分:1)

你真的不应该在一个页面上有两个具有相同ID的元素,因为它违反HTML规范并且可能导致问题。

相反,如果需要,可以考虑使用类和单独的ID,并使用jQuery选择:

<select class="XYZ" id="select_1" .... >
<bla bla bla OTHER DOM ELEMENTS>
<select class="XYZ id="select_2" ... >
<bla bla bla OTHER DOM ELEMENTS>
<button id="ABC" />

<script>
$(function()
{
    $('#ABC').click(function()
    {
        var value = $('#select_2').val();
    });
});
</script>

答案 1 :(得分:0)

请勿使用Id用户类,然后找到最接近的元素, 当有多个具有相同id的元素时,jquery将无法正常工作。

并且在你的html父元素和子元素看起来像是在同一级别,然后使用兄弟姐妹而不是最接近。

答案 2 :(得分:0)

您可以使用.prev,如下所示

   $(this).prev().attr('value');