1

非表示の入力タイプの値を取得しようとしていますが、機能していません。

JQUERY(スクリプトタグ内):

$('.flagComment').click(function() {
    var commentid = $(this).siblings('.commentId').attr('value');

    alert(commentid);
});

HTML(これはwhileループで数回エコーします):

<div class='bar'>
    <a href='#' class='flagComment'>Flag</a>
</div>

<input type='hidden' class='commentId' value='testvalue' />
4

3 に答える 3

3

試す:

var commentid = $(this).parent().next('.commentId').val();

非表示の入力はdivの兄弟であり、アンカーではないためです。

于 2012-01-02T15:32:40.463 に答える
0

.commentIdの兄弟ではないため、これはより適切に機能するはず.flagCommentです。

$('.flagComment').click(function(){
    var commentid = $(this).parent().next('.commentId').val();
    alert(commentid);
});

デモ

于 2012-01-02T15:32:36.190 に答える
0

inputはこのリンクの兄弟ではありません。今それは動作します:

<div class='bar'>
<a href='#' class='flagComment'>Flag</a>
<input type='hidden' class='commentId' value='testvalue' />
</div>

また、closest()関数で試すことができます。

$('.flagComment').click(function() {
    var commentid = $(this).closest('.commentId').attr('value');
    alert(commentid);
});
于 2012-01-02T15:34:34.597 に答える