我正在尝试使用JQuery load()而不是javascript ajax。我使用php循环为每个ids
生成了多个DIV
。
当创建如下所示的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
}
?>
答案 0 :(得分:0)
我认为你想要的是绑定一个doubleclick
事件处理程序,可以这样做:
$("<?=$gen;?>").on("dblclick", function (e) {
// do some stuff here.
});
答案 1 :(得分: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>