我对 javascript 和 JQuery 编程还很陌生。通常,要访问元素,我会给它们一个 ID,这样我就可以像 $("#"+id).blabla().
但现在我需要动态创建一个 div,并访问其中的元素。
有点像
<div id="automaticallyGeneratedId">
<div ???></div> <!-- first div -->
<div ???></div> <!-- second div -->
</div>
访问和识别每个内部 div 的最佳做法是什么? 我为他们生成另一个 ID? 或者什么?
我对选择器的理论还不是很清楚。
编辑:将问题从识别单个内部 div 修改为识别其中许多 div
最佳答案
您可以在生成 id
时维护一个模式.例如:
如果你总是生成id
喜欢:myid1
, myid2
, myid3
...
<div id="myid1">
<div></div>
</div>
<div id="myid2">
<div></div>
</div>
......
那你可以试试:
$('div[id^=myid]').find('div').foo();
或
$('div[id^=myid] div').foo();
在这里,^=
是从选择器开始的,所以 div[id^=myid]
将选择 div
谁的id
从 myid
开始.
您还可以使用包含词选择器,即 ~=
并像$('div[id~=myid]')
一样使用.这将选择 div
与 id
包含单词 myid
.
而不是 id
如果你想使用其他属性,例如。 name
然后像这样更改选择器:
$('div[name^=myid]')
或 $('div[name~=myid]')
.
关于javascript - 使用 HTML/Javascript 访问动态创建的 div 中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11547574/