PHP:单选按钮将重定向到另一个页面而不使用按钮/提交

时间:2013-09-12 10:18:30

标签: php html

情境:

我有一个单选按钮,当用户点击单选按钮时,它会重定向到另一个页面....

所以这是我的代码:

    <?php
    $radio = mysql_query("SELECT fldNetname FROM tbldata WHERE fldMonth = '$get_month' AND fldWeek = '$get_week' GROUP BY fldNetname ORDER BY fldNetname");
    while ($row = mysql_fetch_array($radio)){
echo "<div><input type='radio' name='playRadio' class='chk_boxes1' value='" . $row['fldNetname']."' " .($_POST['playRadio'] == $row['fldNetname'] ? 'checked' : '') . " onClick=\'this.form.action='looptime_utilization_process.php'; this.form.submit()\' >";
    echo $row['fldNetname'];"</div>";
}
    ?>

当我尝试运行它时,没有错误,但它没有指向我想要的页面。 有没有一种方法,单选按钮也可以像一个按钮,可以进入另一种形式?

感谢。

4 个答案:

答案 0 :(得分:0)

<form action='looptime_utilization_process.php'>
<input type='radio' name='playRadio' class='chk_boxes1' onClick='form.submit();' >
<form>

答案 1 :(得分:0)

使用Javascript

if(document.getElementsByID("playradio").value==<ur value>)
{
param="<ur parameters>";
xmlhttp.open("GET", "looptime_utilization_process.php?".param ,false);
xmlhttp.send();
}

答案 2 :(得分:0)

试试这个

$trgt=$_POST['playRadio'];
$radio = mysql_query("SELECT fldNetname FROM tbldata WHERE fldMonth = '$get_month' AND fldWeek = '$get_week' GROUP BY fldNetname ORDER BY fldNetname");
while ($row = mysql_fetch_array($radio)){
 $v=$row['fldNetname'];
 echo "<div><input type='radio' name='playRadio' class='chk_boxes1' value='$v'" 
    .($trgt == $v ? 'checked' : '')
    .' onclick="o=document.forms[0];o.action=\'looptime_utilization_process.php\'; o.submit()" >';
 echo "$v</div>";
}

您的onClick部分中的引号存在一些问题。 this也不会以您想要的方式在那里工作。我将其替换为document.forms[0],假设它是您要提交的页面上的第一个form,当然,还假设单选按钮 实际位于{{} 1}}标签!根据需要更改...

当然:将<form>上下文置于单选按钮的action=...部分中,只有在表单的原始操作指向需要其他内容的其他内容时才有意义。用例。否则请遵循Gary Hayes的建议并将action属性放入onclick标签。

答案 3 :(得分:0)

我已经纠正了所有HTML和PHP错误:

<?php
$radio = mysql_query("SELECT fldNetname FROM tbldata WHERE fldMonth = '" . mysql_real_escape_string($get_month) . "' AND fldWeek = '" . mysql_real_escape_string($get_week) . "' GROUP BY fldNetname ORDER BY fldNetname");
while ($row = mysql_fetch_array($radio)) {
?>

<div>
  <input type="radio" name="playRadio" class="chk_boxes1" value="<?php echo $row['fldNetname']; ?>"<?php echo ($_POST['playRadio'] == $row['fldNetname'] ? 'checked=" checked"' : ''); ?> onclick="this.form.action='looptime_utilization_process.php'; this.form.submit();">
  <?php echo $row['fldNetname']; ?>
</div>
<?php
}

我改变了什么:

  1. 添加mysql_real_escape_string(); - 如果您的变量尚未转义,则提高安全性
  2. 将回显字符串连接更改为关闭/打开<?php标记
  3. onClick更改为onclick(所有属性都应在大多数现代标准中以小写字母书写)
  4. checked更改为checked="checked"
  5. 更正了onclick属性
  6. 中的错误引号