针对具有特定类和ID的div

时间:2015-11-10 09:35:34

标签: jquery ajax

所以,我有关于灯箱内容的以下div和脚本:https://github.com/noelboss/featherlight

(注意,灯箱插件只是"镜像"整个div甚至带有id,所以看起来有两个div有一个相同的id)

<div class="regular" id="my_id">
    Lightbox content
</div>
::before
<div class="regular special_div" id="my_id"> //identical id as the first div
    Lightbox content
</div>


<script>
...
success: function(data){
        jQuery('#my_id').html(data);
...
</script>

因此,使用此灯箱插件,选定的div会显示在灯箱中,并添加一个名为(在本例中)"special_div"的类。

我有一个ajax函数用#my_id加载这个div里面的页面。 问题是ajax是在第一个div容器中加载的,其id =#my_id。

在灯箱打开的情况下,div现在有一个&#34; special_div&#34;类。

有没有办法使用&#34; .special_div&#34;来定位jquery函数中的第二个div。 ?

5 个答案:

答案 0 :(得分:2)

要使用 special_div 类定位div,请使用:

jQuery('.special_div#my_id').html(data);

您还可以使用jQuery提供的:eq()选择器来按索引定位元素:

jQuery('#my_id:eq( 1 )').html(data); 

答案 1 :(得分:1)

是的,只需对选择器更具体一点。请记住,jquery选择器的工作方式与css选择器类似。

facebook-php-sdk-v4-5.0.0

答案 2 :(得分:1)

<强> HTML

<div class="container">
<div class="regular" id="my_id">
    Lightbox content
</div>
::before
<div class="regular special_div" id="my_id"> //identical id as the first div
    Lightbox content
</div>
</div>

<强> JS

jQuery(".container>div:nth-child(2)").html(data);

nth-child

答案 3 :(得分:1)

WebChromeClient

答案 4 :(得分:1)

使用jQuery,您可以像这样链接一个类:

jQuery('#my_id.special_div'); 

这应该引用反射的div。但是我不会在DOM中留下2个相同的ID。这是错误的HTML标记,ID应该是个体的,可能会导致警告/错误。 Read this for more information

相反,您可以使用(针对此方案):

jQuery('.regular:last');

希望这有帮助