jQueryで同じIDを持つ<div>
をすべて選択しようとしています。どうすればいいのですか?jQueryで特定のIDを持つすべての要素を選択する方法は?
私はこれを試してみましたが、それが
jQuery('#xx').each(function(ind,obj){
//do stuff;
});
jQueryで同じIDを持つ<div>
をすべて選択しようとしています。どうすればいいのですか?jQueryで特定のIDを持つすべての要素を選択する方法は?
私はこれを試してみましたが、それが
jQuery('#xx').each(function(ind,obj){
//do stuff;
});
異なるIDを使用しますが、各DIVに同じクラスを割り当てます。
<div id="c-1" class="countdown"></div>
<div id="c-2" class="countdown"></div>
これもjQueryののリターン(「カウントダウン」)のオフに基づいてIDを再構築することができるという付加的な利点を有している。長さ
[OK]を何それぞれに複数のクラスを追加する方法についてカウントダウンタイマー。 IE:
<div class="countdown c-1"></div>
<div class="countdown c-2"></div>
<div class="countdown c-1"></div>
こうして、あなたは両方の世界のベストを得ます。それは繰り返しのIDSを許可する
バラサシアン:私はids1.nでn個のカウンタを持っているので、それぞれid = c-1、id = c-2などがありますが、これらの繰り返しはいくつかあります。だから私はあなたの方法を使用することはできません。彼らはすべて同じクラス= 'カウントダウン'を持っています ありがとう – mark
なぜあなたはそれを繰り返したいですか?特にユニークなIDが必要です。 – Ballsacian1
バラシアン:ありがとう!それは華麗でした!私が望む方法のように動作します!なぜ私はそれを前に考えなかったのか分からない! – mark
あなたの文書が同じIDを持つ2つのdiv要素を含めることはできません動作しませんでした。これはinvalid HTMLであり、その結果、基盤となるDOM APIはサポートしていません。 HTML standardから
:
ID =名[CS]この属性は、要素に 名前を割り当てます。この名前は である必要があります。
各divに異なるIDを割り当てて、両方とも$('#id1, #id2)
を使用して選択することができます。または、両方の要素(たとえば.cls
)に同じクラスを割り当て、両方を選択するには$('.cls')
を使用します。
また、基礎となるgetElementById()関数のほとんどがjQuery他のライブラリは、実際の検索拒否をして、与えられたIDと一致する最初の(またはランダムな)要素以外のものを返すよう呼び出すことになり、それをサポートすることは手動でDOMを歩くことを意味します。無効なマークアップの価値がありません! – ironfroggy
この投稿について: 興味深いことに、javascript関数getElementsByName(xxx)があります - 複数のことに気付く - 同じ名前の要素を複数持つことは完全に合理的であることを暗示します... – Jimbo
@Jimbo - Trueしかし私の答え'name'ではなく、同じ' id'を持つ要素についてです。 –
また、2つのdivのユニークなIDで2つのdivをラップすることもできます。そして、ここで$("#div1","#wraper1")
と$("#div1","#wraper2")
でのdivを選択するあなたが行く:
<div id="wraper1">
<div id="div1">
</div>
<div id="wraper2">
<div id="div1">
</div>
ビューの学術的観点から(このようなクラスを使用するなど)、ここで他の正解は、ありますが、持っていてもよいことは勿論です同じIDを持つ複数のdivがあり、jQueryでそれらを選択することができます。あなたは
jQuery("#elemid")
を使用する場合
それは与えられたIDを持つ唯一の最初の要素を選択します。もちろんこれは、任意の属性に選択のために働く
jQuery("[id=elemid]")
、あなたは可能性:あなたは属性(あなたのケースでは例えばID)で選択したときに
しかし、それはのようなので、一致するすべての要素を返します。問題のタグを指定することで選択範囲をさらに絞り込むことができます(例:あなたのケースでDIV)
jQuery("div[id=elemid]")
同じ名前を持つすべてのコントロールを返しますが、あなたはテキストが存在しないことを確認する必要があります最初のidで
$('div[id^="c-"]')
$("div[id^=" + controlid + "]")
をdiv要素を選択するためにこれを試してみてくださいいずれかのコントロールで
IDは一意であることを意味します。クラスを使用する。 –
誰もが知っている、誰もここで彼の質問に答えた。 – Sid
必ずしも一意のIDを持つことはできませんが、少なくとも私はそれを常に余裕がありません。さて、@mydoghaswormsさんは、質問には非常にうまく答えています[1]。 [1]:http://stackoverflow.com/questions/902839/jquery-select-divs-with-same-id#answer-6744674 – Fr0zenFyr