在按钮click..jquery上获取最接近的select元素的id

时间:2016-06-15 12:20:11

标签: jquery

  <td class="col-sm-2">
          <select class="form-control newclass addvalue input_color"  id="sugar_id">
            <option value="">Select Value</option>
            <option value="ABSENT">ABSENT</option>
            <option value="PRESENT">PRESENT</option>
          </select>
       <div id="sssugar_id">
         <input id="myInput1" class="form-control" required="" placeholder="Fill  Value Or Select Dropdown" style="margin-top: 5px;border-color: green;border-width: medium;" type="text">
        <button type="button" id="mybtn1" class="btn btn-success button_class" style="margin-top: 5px;" onclick="addtest(1)">ADD</button>
       </div>
  </td>

我动态添加输入和按钮,如何在按钮点击时获取最近的选择元素的ID?

2 个答案:

答案 0 :(得分:1)

$('.button_class').click(function() {
   alert($(this).parent().prev().attr('id'));
});

答案 1 :(得分:0)

如果您确定它们彼此相邻,请使用.prev()。 (这应该是最快的。)

$('#mybtn1').on('click', function(){
    alert($(this).prev('select').attr('id'));
});

这将获得前一个元素。

如果<select>位于<button>之后,那么你可以这样找到它:

$('#mybtn1').on('click', function(){
    alert($(this).next('select').attr('id'));
});

如果中间可能存在其他元素,您可以使用.siblings():

$('#mybtn1').on('click', function(){
var id = $(this).siblings('.YourClass').attr('id');
});

这将使所有兄弟姐妹与所需的班级相同。