"in"クラスの次のテキストボックスの値を取得するJqueryコードを記述しようとしています。私がここにあるコードは動作していません、値は常に定義されていません。私は間違って次の()関数を使用していると思いますが、私は確信が持てません。jqueryのnext()関数を使用して次のテキストボックスを取得する
答えて
HTMLを与えたあなたの例は、実際に動作します。あなたはここにそれを見ることができます:http://jsfiddle.net/jfriend00/RGsDq/。あなたのコメントに基づいて、次の兄弟であろうとなかろうと、クラスを「兄弟」とする最初の兄弟が欲しいと思うように思えます。 .next()は次の兄弟だけを調べます。あなたはそれが非常に次の兄弟がない場合でも、あなたはこれらのいずれかを行うことができます「の」クラスを持つ最初の兄弟をしたい場合:
$(this).nextAll(".in").first().val(); // next sibling with class ".in"
$(this).parent().find(".in").first().val(); // next child of parent with class ".in"
あなたはここで働いこれら二つのオプションの最初のを見ることができます:http://jsfiddle.net/jfriend00/4VwAN/
あなたはhtmlを投稿する必要があります。 Nextは次の兄弟を取得します。したがって、html構造に非常に依存します。すべてのテキストボックスの親であるポイントに到達するために親を追加する必要があります。
完全なHTMLページが掲載されています。 –
$(this).next(".in")
は、「in」のクラスを持つ最初のテキストボックスのすべての兄弟を調べるのではなく、次の要素のクラスが「in」の場合にのみ値を返します。 お試しください$(this).nextAll(".in:eq(0)")
クラス "in"の要素を持つ最初の次のクラスだけを探す必要があります –
私はこれが ':eq(0)'セレクタの機能だと思います。 – Tryster
あなたが行っていることが正しいか、問題が何であるかを知るには、対応するHTMLマークアップを見る必要があります。 – jfriend00