Jquery按类查找隐藏输入的值

时间:2015-10-01 18:05:55

标签: javascript jquery

我有一个使用while循环列出结果的页面,但是当点击case_id时,我很难通过类class_btn获取隐藏输入的值。

<table>
  <tr>
      <td>
         <input type="hidden" name="case_id" class="case_id" value="<? echo $case_id; ?>" />
         <input type="hidden" name="account_id" class="account_id" value="<? echo $account_id; ?>" />
         <input type="hidden" name="user_id" class="user_id" value="<? echo $diary_id; ?>" />
         <input type="submit" name="submit_btn" value="Submit" />
         <input type="button" name="class_btn" value="get class" />
      </td>
    </tr>
</table>

我正在使用

case_id = $(this).prev('.case_id').val();

但我得到的只是undefined

4 个答案:

答案 0 :(得分:1)

在这种情况下,您应该使用prevAll而不是prev,因为它不是紧邻的兄弟姐妹。 prevAll will list all preceding sibling elements然后您可以将其过滤掉。

case_id = $(this).prevAll('.case_id').val();

答案 1 :(得分:1)

.prev查看前一个元素,而不是之前的元素,直到找到正确的元素。您应该获得最近的父容器,然后找到您要查找的元素。

$(this).closest("td").find('.case_id').val();

答案 2 :(得分:0)

试试这个:

case_id = $(this).closest('td').find('.case_id').val();

答案 3 :(得分:-1)

您应该能够像case_id那样访问$('input[name=class_btn]').click(function(){ alert($(this).parent().find('.case_id').val()); }); 的值:

@Override

public DBObject next() {
    checkIteratorOrArray(IteratorOrArray.ITERATOR);
    if (!hasNext()) {
        throw new NoSuchElementException();
    }

    return nextInternal();
}