好的,所以我让它在单击时在用户名下下拉另一个,显示该用户的姓名、电子邮件等,但它会在每个用户名下下拉每个用户的用户信息,而不是在我点击的那个下方上。
有没有办法告诉它只显示下一个元素,而不是所有隐藏的元素?
我试过抓住点击的索引(带有用户名的那个,但我似乎无法使用任何类型的 index+1 类型逻辑来获得一个函数。
这是我现在拥有的代码:
<?php
for ($output_user = 0; $output_user <= $num_pending - 1; $output_user++)
{
echo "\n\t<tr class=\"pending_users\">\n\t\t<td class=\"admin\">".$pending_user[$output_user][0]."</td>";
echo "\n\t\t<td class=\"m_1\"><input type=\"checkbox\" value=\"approve\"/></td>";
echo "\n\t\t<td class=\"m_l\"><input type=\"checkbox\" value=\"deny\"/></td>";
echo "\n\t</tr>";
echo "\n\t<tr class=\"showhide\">\n\t\t<td class=\"admin\" colspan=\"3\">Name:".$pending_user[$output_user][1]." ".$pending_user[$output_user][2]."\nEmail: ".$pending_user[$output_user][3]."\nEnrol Date: ".$pending_user[$output_user][4]."</td>\n\t</tr>";
echo "\n\t</tr>";
}
?>
<script>
$(document).ready(function() {
//Hides specific user details when the page loads
$("div.show_user_info tr.showhide:visible").hide();
//Makes every other row another bgcolor - effects pending user table only
$("tr.pending_users:odd").css("background-color", "#ffff00");
});
$("td.admin").click(function () {
var nextIndex = $("tr").index(this) + 1;
$("div.show_user_info tr.showhide:hidden").slideDown("slow");
});
$("tr.showhide").click(function () {
$(this).slideUp("slow");
});
</script>
我正在处理的页面是一个管理页面,用户可以在其中批准或拒绝注册请求。我正在使用 php 为正在等待注册的数据库中的每个用户动态创建一个表行。
话虽如此,当用户单击用户名所在的位置时,我想插入一个 + 来显示用户信息(姓名、请求日期等),并且当用户单击另一个与另一个用户名,并让它显示该用户的另一行等。
我用来创建表行的 php 是这样的:
<?php
for ($output_user = 0; $output_user <= $num_pending - 1; $output_user++)
{
echo "\n\t<tr>\n\t\t<td class=\"admin\">".$pending_user[$output_user][0]."</td>";
echo "\n\t\t<td class=\"m_1\"><input type=\"checkbox\" value=\"approve\"/></td>";
echo "\n\t\t<td class=\"m_l\"><input type=\"checkbox\" value=\"deny\"/></td>";
echo "\n\t</tr>";
}
?>
我可以创建一个使用 php 执行此操作的 onclick 事件,还是需要使用 javascript?我一直在互联网上寻找类似的例子,但我找不到任何有用的东西。