使用jquery检查div是否内部有一个img元素

时间:2012-12-08 19:30:32

标签: jquery jquery-ui drag-and-drop

我正在使用图片的jquery拖放到目标div。

我有一个调用一个函数的按钮,该函数应检查图像是否在div中,但是我无法使其正常工作。

我正在努力做到如下:

<script>
    ....

    $( '#check' ).click(function(){
        if($("#droptarget:has(img.img1)")){
            alert("yes");
        }else{
            alert("no");
        }
    });
</script>

<img id="img1" class="img1" src="image.png">
<div id="droptarget"></div>
<a href="javascript:" id="check">check</a>

我的代码出了什么问题?

编辑:总是在第一个条件下进入警报(“是”)而没有div内的图像

2 个答案:

答案 0 :(得分:7)

$()总是一个jQuery对象,它使它变得真实,尝试

$( '#check' ).click(function(){
    if($("#droptarget:has(img.img1)").length > 0){
        alert("yes");
    }else{
        alert("no");
    }
});

检查选择器#droptarget:has(img.img1)

是否匹配

答案 1 :(得分:0)

您的脚本高于#check,因此点击事件不受约束。使用$(document).ready(或只是$(...)或将您的脚本移至#check下方。