我的页面上有多个按钮,具有相同的类.当我点击一个按钮时,我想得到最近的输入框的值(请记住,我的页面上有多个输入框和按钮,具有相同的类).
我有:
$(".deletepostbutton").click(function() { var deleteid = $(this).closest('.deleteid').attr('value'); }); <div class="microblogpostactions"> <input type="text" name="deleteid" class="deleteid" value="'.$row['id'].'" /> <a href="Javascript:void[0]" class="deletepostbutton">Delete</a> </div> <div class="microblogpostactions"> <input type="text" name="deleteid" class="deleteid" value="'.$row['id'].'" /> <a href="Javascript:void[0]" class="deletepostbutton">Delete</a> </div>
解决方法
如果您确定它们彼此相邻,请使用
.prev()
. (这应该是最快的.)
var deleteid = $(this).prev().attr('value');
这将获得前一个元素.
如果中间有可能存在其他元素,则可以使用.siblings()
:
var deleteid = $(this).siblings('.deleteid').attr('value');
这将使所有兄弟姐妹都在同一个< div>内使用deleteid类.