0

まず、これが重複した質問である場合はお詫び申し上げます。同様の質問がされているのを見つけたにもかかわらず、私が望んでいた正確な解決策を見つけることができませんでした。私の JSP では、以下に示すように項目のリストを繰り返し処理しています。

<c:forEach var="entry" items="${xxx}">
                                <form:form action="XXX.do" method="POST" autocomplete="off">
                                    <!-- other fields -->
                                    <input type="hidden" name="ip" id="ip" value="${entry.ipAddress }" />
                                    <input type="button" value="Submit" onclick="fun()"/>
                                </form>
</c:forEach>

私のjquery関数では、以下に示すように、IDが「ip」の隠しフィールドの値を取得しようとしています:

fun() {
    var ip = $('#ip').val();
    //Other stuff
}

非表示フィールドの ID はリスト内のすべてのエントリの 'ip' と同じであるため、リストの最初の要素の 'ip' 値のみを取得します。動的にサイズ変更されるリストの n 番目の要素の 'ip' 値を取得するにはどうすればよいですか?

4

2 に答える 2

2

jQuery のeqメソッドを使用します。

一致した要素のセットを、指定されたインデックスの要素に減らします。

$("[name='ip']").eq(n)

または:eq

$("[name='ip']:eq(n)")

関心のある n 番目の要素はどこにnありますか。

また、ids は一意である必要があります。それらが同じであるべき状況はありません。

于 2013-04-16T01:17:16.537 に答える
1

複数のIDの問題は別として(クラスを使用する必要があります)、次のことができます:

var ip = $('input[type="hidden"][name="ip"]:nth-child('+n+')').val();
于 2013-04-16T01:18:14.650 に答える