我有一个表,其中包含三行 quest_row、quest_image 和 quest_text 组。最初,只有 quest_row 是可见的 - 这有效。它显示问题编号。当用户单击表的 quest_row 行时,我希望它显示下一个 quest_image 和 quest_text 行。这是代码:
<table width="90%">
<tr>
<td>Questions <?php echo "how many = $how_many"; ?>
</td>
</tr>
</table>
<?php
for ($i=1;$i<=$how_many;$i++) {
$row=mysqli_fetch_assoc($result);?>
<table name="quest_info" id="quest_info" border=1 width="100%">
<tr class="quest_row">
<td bgcolor="#00CCFF">
Question# <?php echo $i; ?>
</td>
</tr>
<?php if ($row["image"] <> NULL) { ?>
<tr class="quest_image" >
<td class="quest_image" id="quest_image<?php echo $i; ?>">
<img src="<?php $pic = $row['image']; echo $base_path . $pic; ?>" width="200" />
</td>
</tr>
<tr class="quest_text" >
<td class="quest_text" id="quest_text<?php echo $i; ?>"><?php echo $row["question"]; ?></td>
</tr>
</table>
<?php
} else {
?>
<tr class="quest_image" >
<td class="quest_image" id="quest_image<?php echo $i; ?>">
</td>
</tr>
<tr class="quest_text" >
<td class="quest_text" id="quest_text<?php echo $i; ?>"><?php echo $row["question"]; ?></td>
</tr>
</table>
<?php
} ?>
<?php
} ?>
<script type="text/javascript" src="../jquery/jquery/jquery-1.7.2.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".quest_text").hide();
$(".quest_image").hide();
$("#quest_info").click(function(){
var trigger = event.target;
alert('target = ' + target);
if(trigger.className == 'quest_row')
{
$(trigger).closest('tr').next('quest_image').show();
$(trigger).closest('tr').next('quest_text').show();
}
});
});
</script>
不知道为什么这不起作用。