[解決済み] IDが角括弧を含む場合、IDでDOM要素を見つける?
2023-07-04 12:21:29
質問
のようなIDを持つDOM要素を持っています。
something[500]
これはRuby on Railsアプリケーションによって構築されました。 この要素を jQuery で取得し、DOM をトラバースして、事前にアクセスできない変数 ID を持つこの要素の親を削除できるようにする必要があります。
どのようにこれを行うことができるか、誰か知っていますか? 次のコードは動作していないようです。
alert($("#something["+id+"]").parent().parent().attr("id"));
さらに調べると、次のようになります。
$("#something["+id+"]")
はオブジェクトを返しますが、それに対して ".html()" や ".text()" を実行すると、結果は常に null か単なる空文字列になります。
どのように解決するのですか?
角括弧をエスケープして、属性セレクタとしてカウントされないようにする必要があります。これを試してみてください。
alert($("#something\\["+id+"\\]").parent().parent().attr("id"));
セレクタの特殊文字について を、特に2番目の段落を参照してください。
メタキャラクタ(例えば
!"#$%&'()*+,./:;<=>?@[\]^``{|}~
のような)メタ文字を名前のリテラル部分として使うには、バックスラッシュ2つでエスケープする必要があります。\\
. 例えばid="foo.bar"
である場合、セレクタ$("#foo\\.bar")
. W3C CSS 仕様では 有効な CSS セレクタに関する完全なルール一式が含まれています。 . また、Mathias Bynens のブログエントリにある 識別子のための CSS 文字エスケープシーケンス .
関連
-
[解決済み] どのDOM要素にフォーカスがあるかを調べるには?
-
[解決済み] DOM要素が現在のビューポートで表示されているかどうかを確認するにはどうすればよいですか?
-
[解決済み] jQuery データ属性の値に基づいて要素を検索する方法は?
-
[解決済み] JavaScriptやデバッグでDOMノード上のイベントリスナーを見つけるには?
-
[解決済み] JavaScriptで要素にクラスが含まれているかどうかを確認する?
-
[解決済み] 内蔵DOMメソッドやPrototypeを使ってHTML文字列から新しいDOM要素を作成する
-
[解決済み] jQueryやgetElementByIdのようなDOMメソッドが、要素を見つけられないのはなぜですか?
-
[解決済み] 要素がDOMに表示されているかどうかを確認する
-
[解決済み] 無効になっている入力フィールドの値を送信する
-
[解決済み] JavaScriptで長い配列を小さい配列に分割する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] AngularJSのエラーです。Cross Origin リクエストはプロトコルスキーム http, data, chrome-extension, https に対してのみサポートされています。
-
[解決済み] カピバラさんでチェックボックスにチェックを入れるには?
-
[解決済み] モバイルWeb HTML5フレームワークの選び方【終了しました
-
[解決済み] なぜ "use strict "はパフォーマンスを10倍向上させるのか?
-
[解決済み] javascript の関数から `undefined` と `null` のどちらを返すのが良いのでしょうか?
-
[解決済み] JavaScriptでの大文字小文字を区別しない正規表現
-
[解決済み] サブドメインにまたがってlocalStorageを使用する
-
[解決済み] javascriptで文字列から関数を作成する方法はありますか?
-
[解決済み] JavaScriptでjson-objectのキーを取得する [重複].
-
[解決済み] JavaScript で `throw` の後に `return` をする必要がありますか?