0

我正在尝试使用 JQuery load() 而不是 javascript ajax。我 ids为每个DIV使用 php 循环生成了多个。

当创建一个像下面这样的 JQuery 函数时,我很好地传递了生成的 div 的 id,但是,我必须在按钮上单击两次.click()才能触发事件,我window.alert()在函数内部放置了一个.click(),它在第二次单击后弹出两次按钮,知道如何正确操作吗?

更新

function updateDivs(generatedID){
    $('#'+generatedID).click(function(){
        //do some .load() stuff
    });
}

<?php
 for($i=0 ; $i < 20 ; $i++){
   $gen = mt_rand(100,999);
?>
   <div id="<?=$gen;?>" onclick="updateDivs(<?=$gen;?>) > some content </div
<?php
}
?>
4

2 回答 2

0

我认为您想要的是绑定一个doubleclick事件处理程序,可以通过以下方式完成:

$("<?=$gen;?>").on("dblclick", function (e) {
   // do some stuff here.
});
于 2013-05-14T02:25:24.210 回答
0

我认为最简单的方法是为你的 div 设置一个类,在里面你可以使用 event.target.id 获取 div id。

我认为你的问题是你需要有类似 document.ready() 或 $(function() { });

<div id="div_id" class="mydiv"> some content </div>
<script type="text/javascript">
           $(document).ready(function () {
        $(".mydiv").click(function (event) {
            alert(event.target.id);
        });
    });
</script>
于 2013-05-14T03:13:08.507 回答