<select class="form-control newclass addvalue input_color" name="CandInv-54" id="sugar_id">
<option value="">Select Value</option>
<option selected value="ABSENT">ABSENT</option>
<option value="1">ADD</option>
</select>
<div id="sssugar_id">
<input id="myInput2" 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="mybtn2" class="btn btn-success button_class" style="margin-top: 5px;" onclick="addtest()">ADD</button>
</div>
<script>
function addtest(){
var xyz = $('#mybtn2').prev('select').attr('id');
alert('id ' + xyz);
}
</script>
答案 0 :(得分:0)
问题是因为select
不是#mybtn2
的兄弟,所以prev()
不会返回任何元素。相反,您需要使用parent().prev('#mybtn2')
,如下所示:
function addtest() {
var xyz = $('#mybtn2').parent().prev('select').prop('id');
alert('id ' + xyz);
}
另请注意,使用不显眼的javascript而不是过时的on*
事件属性来附加事件处理程序会更好。当你使用jQuery时,你可以这样做:
$('#mybtn2').click(function() {
var xyz = $(this).parent().prev('select').prop('id');
alert('id ' + xyz);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="form-control newclass addvalue input_color" name="CandInv-54" id="sugar_id">
<option value="">Select Value</option>
<option selected value="ABSENT">ABSENT</option>
<option value="1">ADD</option>
</select>
<div id="sssugar_id">
<input id="myInput2" 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="mybtn2" class="btn btn-success button_class" style="margin-top: 5px;">ADD</button>
</div>
答案 1 :(得分:0)
添加parent('div')
以获取选择框。
function addtest(){
var xyz = $('#mybtn2').parent('div').prev('select').attr('id');
alert('id: ' + xyz);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<select class="form-control newclass addvalue input_color" name="CandInv-54" id="sugar_id">
<option value="">Select Value</option>
<option selected value="ABSENT">ABSENT</option>
<option value="1">ADD</option>
</select>
<div id="sssugar_id">
<input id="myInput2" 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="mybtn2" class="btn btn-success button_class" style="margin-top: 5px;" onclick="addtest()">ADD</button>
</div>
答案 2 :(得分:0)
要获得预期的结果,请使用以下选项,首先选择按钮的父元素,然后选择属性id的上一个元素选择和获取的值
$('#mybtn2').parent().prev('select').attr('id');
alert('id ' + xyz);
}