将jquery slidetoggle应用于来自php的一段时间的结果

时间:2014-05-13 16:32:10

标签: php jquery css

php中的以下代码段使用while语句输出变量 $ the_job_id 。对于每个输出,我想应用jquery slidetoggle。问题是在我的代码中,slidetoggle只适用于我的第一次输出。不适用于其他人。知道我应该如何修改我的代码,以便使用slidetoggle为我的每个输出工作吗?

这是我的PHP代码:

<?php

$result = mysql_query("select * from `user_job` where `job_id` IN ($all_saved_job_id) ");

while($run_job = mysql_fetch_array($result)){

  $the_job_id = $run_job['job_id']; 

echo"<div id='flip'> PRESS TO SLIDE </div>";

echo"  <div id='panel'>  $the_job_id </div>";

}// end while

?>

这是我的剧本:

<script> 

$(document).ready(function(){
  $("#flip").click(function(){
     $("#panel").slideToggle("slow");
  });
});

</script>

这是我的css:

<style>

#flip{
cursor:pointer;
margin-left:100px;
}

#panel{
padding:0px;
display:none;
}       

</style>

1 个答案:

答案 0 :(得分:1)

id必须是唯一的,否则您总是会在页面中找到重复id的第一个元素,因此您需要使用类来代替:

echo"<div class='flip'> PRESS TO SLIDE </div>";

echo"  <div class='panel'>  $the_job_id </div>";

然后您可以使用.按类名来定位元素:

$(document).ready(function(){
    $(".flip").click(function(){
        $(this).next().slideToggle("slow");
    });
});

请注意,您还需要使用.而不是#来更改CSS选择器。