选中第1组单选按钮的值时,显示第2组单选按钮

时间:2013-03-10 04:35:21

标签: php button radio

我想要的是,当我检查第一组单选按钮(名称=来源;来自数据库的值)时,他们可以显示第二组单选按钮(名称=考试;值也来自数据库)

<?php 

$sql = 'SELECT * FROM source'; 
$query = mysql_query($sql); 

while ($row =mysql_fetch_array($query)) {
   echo '<input type="radio" name="source" value="'.$row['s_id'].'">'.$row['s_desc']; 
   }

*if ($source.checked){
echo '<input type="radio" name="exam" value="'.$row['e_id'].'">'.$row['e_desc']; 
   }
}*
?>

1 个答案:

答案 0 :(得分:0)

$ source未在此摘录中定义。你的意思是$ row ['checked']?

也许检查查询返回的值实际上是您期望看到的值会有所帮助。如果您使用以下行,它将暂时中断您的布局,但它将帮助您确认您的查询是否按预期运行。

while ($row=mysql_fetch_array($query)) {
  echo '<input type="radio" name="source" value="'.$row['s_id'].'">'.$row['s_desc'];

  echo '<br />checked: '.$row['checked'];
  echo '<br />e_id: '.$row['e_id'];
  echo '<br />e_desc: '.$row['e_desc'];
  }

你在哪里“检查”rb1的状态?我目前的猜测是,最终用户将检查PHP脚本提供的HTML页面中的单选按钮...但是您正在查看服务器上的数据库,以获取有关按钮本地检查状态的信息。如果我的猜测是正确的,您不希望在每次点击后再次提供该页面。相反,您可以使用所有可能的按钮为页面提供服务,并使用CSS隐藏未选择rb1按钮的rb2按钮。

注意:未经测试的PHP

while ($row=mysql_fetch_array($query)) {
  echo '<input type="radio" name="source" value="'.$row['s_id'].'"';
  echo 'onclick=yourJavaScriptFunctionToDisplayTheRB2Button()';
  echo '>'.$row['s_desc'];

  echo '<input type="radio" name="exam" value="'.$row['e_id'].'"';
  if (!$row['checked']) {
    echo ' style="visibility=hidden"';
  }
  echo '>'.$row['e_desc'];
  }

对于yourJavaScriptFunctionToDisplayTheRB2Button(),请参阅jsFiddle示例here