Php 单选按钮以显示另一组表单
我想实现一种形式,当选择一个单选a时,它将显示另一组单选按钮 我已经填好表格了Php 单选按钮以显示另一组表单,php,javascript,forms,radio,Php,Javascript,Forms,Radio,我想实现一种形式,当选择一个单选a时,它将显示另一组单选按钮 我已经填好表格了 <div id="numberofpax"> <p><input type="radio" id="radio1" name="ToggleDivs" onclick="Toggle('Div2-selfdrive');" value="2" class="2paxcar"> <label for="radio1"><img src="images
<div id="numberofpax">
<p><input type="radio" id="radio1" name="ToggleDivs" onclick="Toggle('Div2-selfdrive');" value="2" class="2paxcar">
<label for="radio1"><img src="images/form/2pax.png"></label></p>
<p><input type="radio" id="radio2" name="ToggleDivs" onclick="Toggle('Div3-selfdrive');" value="3" class="3paxcar" checked>
<label for="radio2"><img src="images/form/3pax.png"></label></p>
<p><input type="radio" id="radio3" name="ToggleDivs" onclick="Toggle('Div4-selfdrive');" value="4" class="4paxcar">
<label for="radio3"><img src="images/form/4pax.png"></label> </p>
<p><input type="radio" id="radio4" name="ToggleDivs" onclick="Toggle('Div5-selfdrive');" value="5" class="5paxcar">
<label for="radio4"><img src="images/form/5pax.png"></label></p>
</div>
<?php
if(isset($_POST['ToggleDivs']))
{
if($_POST['ToggleDivs'] = '2')
{
echo "2 PAX";
}
elseif($_POST['ToggleDivs'] = '3')
{
echo "3 PAX";
}
elseif($_POST['ToggleDivs'] = '4')
{
echo "4 PAX";
}
else
{
echo "5 PAX";
}
}
?>
因此,默认情况下,“radiobutton-pax1”和“radiobutton-hotel1”和“radiobutton-car1”是默认选择的,我已经实现了这一点
当用户选择“radiobutton-pax1”时,“radiobutton-car1至4”将出现。
当用户选择“radiobutton-pax2”时,“radiobutton-car1至4”将出现。
当用户选择“radiobutton-pax3”时,“radiobutton-car2至3”将出现。
当用户选择“radiobutton-pax4”时,“radiobutton-car3至4”将出现
我也做到了这一点。问题是默认选中的单选按钮假定是每个选项中最低的。比如,
如果选择radiobutton-pax1,默认选择为radiobutton-car1
如果选择radiobutton-pax2,默认选择为radiobutton-car1
如果选择radiobutton-pax3,默认选择为radiobutton-car2
如果选择radiobutton-pax4,默认选择为radiobutton-car3
这就是我被卡住的地方。你试过使用==
在PHP中,=运算符用于为变量赋值
您正在寻找comparison==运算符,该运算符测试expression1是否等于expression2,并将对其求值为true或false
请参阅:
<?php
if(isset($_POST['ToggleDivs'])){
if($_POST['ToggleDivs'] == '2'){
echo "2 PAX";
}
elseif($_POST['ToggleDivs'] == '3'){
echo "3 PAX";
}
elseif($_POST['ToggleDivs'] == '4'){
echo "4 PAX";
}
else{
echo "5 PAX";
}
}
?>
或者,您可能会发现switch语句比一长串Else if语句更有用。例如:
<?php
switch($_POST['ToggleDivs']){
case '2':
echo "2 PAX";
break;
case '3':
echo "3 PAX";
break;
case '4':
echo "4 PAX";
break;
default:
echo 'error';
break;
}
它显示默认的错误。即使我改为2人左右,它仍然会显示默认值,这是因为您的POST数组为空。它将启动switch语句,并且与任何情况都不匹配,最后在默认部分显示内容。@smartans我假设您的php代码位于不同的页面上,对吗?另外,请确保检查isset$\u POST['ToggleDivs']是否返回值。如果您试图通过上述代码实现您所说的内容,那么它将不起作用。首先,单选按钮不会触发您的表单提交,因为您的值不会被发布。其次,比较运算符在php代码中设置为赋值运算符。请将您的表格与密码一起发送给我们,以便我们可以为您提供帮助。
<?php
if(isset($_POST['ToggleDivs'])){
if($_POST['ToggleDivs'] == '2'){
echo "2 PAX";
}
elseif($_POST['ToggleDivs'] == '3'){
echo "3 PAX";
}
elseif($_POST['ToggleDivs'] == '4'){
echo "4 PAX";
}
else{
echo "5 PAX";
}
}
?>
<?php
switch($_POST['ToggleDivs']){
case '2':
echo "2 PAX";
break;
case '3':
echo "3 PAX";
break;
case '4':
echo "4 PAX";
break;
default:
echo 'error';
break;
}