將是「更好」,如果你換你的HTML在<div class="box">
但像你所擁有的,你可以使用上一個或下一個取決於其中點擊情況:
http://jsfiddle.net/pEb7D/4/
$(".oberpunkte").change(function(){
alert($(this).next('input').val())
});
$('#123').on('click',function(){
alert($(this).prev('input').val());
});
作爲父母的div.box更新 在我看來這是一個更好的解決方案。原因不要緊,你點擊就可以從$(this)
檢查哪裏是最接近框,然後得到我們正在尋找...
http://jsfiddle.net/pEb7D/7/
<script type="text/javascript">
$("#123, .oberpunkte").on('click', function(){
alert($(this).closest('.box').children('.needToFind').val())
});
</script>
<div class="box">
<input type='checkbox' class='oberpunkte' name='checkbox' value='typo 3'/>
<input class="needToFind" type='text' name='text' value='typo3txt'/>
<input type='button' name='test' id='123' value='Alert'/>
</div>
<div class="box">
<input type='checkbox' class='oberpunkte' name='checkbox' value='typo 3'/>
<input class="needToFind" type='text' name='text' value='123456'/>
<input type='button' name='test' id='123' value='Alert'/>
</div>
<div class="box">
<input type='checkbox' class='oberpunkte' name='checkbox' value='typo 3'/>
<input class="needToFind" type='text' name='text' value='xxxxxx'/>
<input type='button' name='test' id='123' value='Alert'/>
</div>
'$(本)。接下來的值( 'input [type = text]')。attr('value')'[** Demo **](http://jsfiddle.net/pEb7D/3/) –
在這種情況下,您想使用兄弟姐妹http:///api.jquery.com/siblings/ –
Dhaval Marthak的解決方案爲我工作。 @RobSchmuecker有更喜歡兄弟姐妹而不是next()嗎? – Preprocezzor