質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Blade

Bladeとは、 PHPフレームワークのLaravelで使用することができるテンプレートエンジンです。テンプレートの継承とエスケープ機能を提供します。

Q&A

解決済

2回答

1133閲覧

jQueryで近くの要素を取得する方法について知りたい。

退会済みユーザー

退会済みユーザー

総合スコア0

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Blade

Bladeとは、 PHPフレームワークのLaravelで使用することができるテンプレートエンジンです。テンプレートの継承とエスケープ機能を提供します。

0グッド

0クリップ

投稿2021/08/26 01:33

編集2021/08/26 02:20

jQueryで近くの要素を取得する方法について知りたい。

以下のようなlaravelのbladeフォームがあったときにjQueryでselect要素の近くのspan要素を取得したいと考えています。
このspanです。

<span class="invalid-feedback" role="alert"> {{ $errors->first('user_id') }} </span>

ただ、以下のようにやっても取得できずに困っています。
closestは親要素じゃないと取得できない?

$('#user-id').closest('span')
<!-- 登録画面用 企業プルダウン --> <div class="form-group"> <label for="user-id">{{ __('ユーザー') }}<span class="badge badge-danger ml-2">{{ __('必須') }}</span></label> <select class="form-control{{ $errors->has('user_id') ? ' is-invalid' : '' }}" id="user-id" name="user_id"> <option></option> </select> @if ($errors->has('user_id')) <span class="invalid-feedback" role="alert"> {{ $errors->first('user_id') }} </span> @endif </div>

なお、フォームは共通のファイルなので、idやクラス名は変更できないとします。
※フォームのファイルをいじることNG

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2021/08/26 01:52 編集

具体的にどのspanでしょう。 複数あります。 それに画面に表示されてないと取れません
退会済みユーザー

退会済みユーザー

2021/08/26 02:20

すみません。追記しましたが、エラーメッセージspanです。
guest

回答2

0

ベストアンサー

用途不明ですがこの配置ならnext()で取れますよ。

js

1$('#user-id').next()

不安なら引数にセレクタを。

js

1$('#user-id').next('span.invalid-feedback')

投稿2021/08/26 02:30

m.ts10806

総合スコア80861

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/08/26 03:11

ありがとうございます。こちらで解決できました。
m.ts10806

2021/08/26 03:58

ドキュメントも確認してくださいね。
guest

0

近くの要素

の定義次第ですね。
親要素、子要素、兄弟要素(直前、前方向すbて、直後、後方向すべて、兄弟すべて)いろんなとり方があります

closestは自分を含む再帰的な親要素です

投稿2021/08/26 01:38

yambejp

総合スコア115012

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/08/26 03:11

ご回答ありがとうございます。 nextを使って解決できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問