たとえば、次のコードはid = "2"の部門を選択します。
row = $("body").find("#2");
このようなことをするにはどうすればよいですか:
row_id = 5;
row = $("body").find(row_id);
上記の構文はエラーを生成します。ここでjQueryのドキュメントを確認し、成功せずに回答しました。
row = $("body").find('#' + row_id);
さらに重要なのは、追加のbody.findを実行してもパフォーマンスに影響がないことです。これを行う適切な方法は単純です:
row = $('#' + row_id);
最短の方法は次のとおりです。
$("#" + row_id)
検索を本文に限定しても何の利点もありません。
また、特に名前を付ける必要のある別のデータセットがある場合は、id
sをより意味のある名前に変更することを検討する必要があります(Paoloの回答によるとHTML準拠)。
IDで検索する場合、$('body').find();
を実行する必要はありません。パフォーマンスの向上はありません。
また、数字で始まるIDは 無効なHTML であることに注意してください。
IDおよびNAMEトークンは文字([A-Za-z])で始まる必要があり、その後に任意の数の文字、数字([0-9])、ハイフン( "-")、アンダースコア( "_")を続けることができます、コロン( ":")、およびピリオド( "。")。
次のようにできます:
row_id = 5;
row = $("body").find('#'+row_id);
コードには2つの問題があります
私はjQueryについてあまり知りませんが、これを試してください:
row_id = "#5";
row = $("body").find(row_id);
編集:もちろん、変数が数値の場合、"#"
を先頭に追加する必要があります。
row_id = 5
row = $("body").find("#"+row_id);