Javascript 从同一函数打开不同的div

Javascript 从同一函数打开不同的div,javascript,jquery,Javascript,Jquery,我尝试从同一个函数中打开不同的div,我的想法是在每次单击中更改div的名称以生成随机div并调用每个div 我的剧本: function load_edit(id,data) { var number = 1 + Math.floor(Math.random()*9999999); //alert("ok"+number); jQuery(".db_edit_float_content").attr("id","db_edit_float_content"+number); jQuery("

我尝试从同一个函数中打开不同的div,我的想法是在每次单击中更改div的名称以生成随机div并调用每个div

我的剧本:

function load_edit(id,data)
{
var number = 1 + Math.floor(Math.random()*9999999);
//alert("ok"+number);
jQuery(".db_edit_float_content").attr("id","db_edit_float_content"+number); 
jQuery("#db_edit_float_content"+number).slideDown(2000);
jQuery(""+id).show(1000).load("edit.php"+data);
}
代码HTML:

<div onclick="load_edit("template","source")"></div>

<div id="" class="db_edit_float_content" style="display:none;">
<div id="db_edit_content">
<div id="db_edit_content_header" onclick="close_load_edit();"></div>
<div id="db_edit_content_body">
</div>
</div>
</div>

这个脚本工作得很好,但是每次点击都没有得到不同的div,只显示了一个div,其他的都没有,我认为必须工作,因为id的名称发生了变化,但是没有得到最终正确的结果


感谢您的帮助,致以最诚挚的问候,因为您正在为所有div分配相同的随机id,然后使用id选择器,该选择器将始终仅获取具有所述id的第一个元素,从而始终返回第一个div

而是使用随机索引值来获取div

function load_edit(id, data) {
    var $divs = jQuery(".db_edit_float_content");
    var number = Math.floor(Math.random() * $divs.length);
    $divs.eq(number).slideDown(2000);
    jQuery("" + id).show(1000).load("edit.php" + data);
}

嗯,你只需要打开一个div的属性。你应该创建nev div,而不是像你在函数中看到的那样,使用它来更改id attr的名称(“id”,“db\u edit\u float\u content”+number),但是没有任何作品总是打开一个div,每次单击都不会打开更多。如果你想要不同的div,你应该添加新的div,而不是更改一个div属性(您只有一个具有class.db\u edit\u float\u内容的div)。您可以使用来生成div。请尝试并继续打开一个div,每次单击都没有不同的div,每次单击都可以打开新div