我有2个单选按钮。如果选择了其中的一个,应该有新的项目 填写选择框http://jsfiddle.net/uuEE2/1/使用单选按钮更新选择框选项
JavaScript代码
function Fill(gender)
{
var dropdown = document.getElementById("aklasse");
switch (gender.value){
case 'm':{
dropdown.options.length = 0;
dropdown.options[dropdown.options.length] = new Option("Schüler Jungen(-12 Jahre)","7");
dropdown.options[dropdown.options.length] = new Option('Jugentliche Jungen (13-15 Jahre)','5');
dropdown.options[dropdown.options.length] = new Option('Junioren Jungen (16-17 Jahre)','3');
dropdown.options[dropdown.options.length] = new Option('Erwachsene Herren (18-54 Jahre)','1');
dropdown.options[dropdown.options.length] = new Option('Senioren Herren','A');
break;
}
case 'w':
{
dropdown.options.length = 0;
dropdown.options[dropdown.options.length] = new Option('Schüler Mädchen (-12 Jahre)','8');
dropdown.options[dropdown.options.length] = new Option('Jugentliche Mädchen (13-15 Jahre)','6');
dropdown.options[dropdown.options.length] = new Option('Junioren Mädchen (16-17 Jahre)','4');
dropdown.options[dropdown.options.length] = new Option('Erwachsene Damen (18-54 Jahre)','2');
dropdown.options[dropdown.options.length] = new Option('Senioren Damen','B');
break;
}
}
}
HTML码
<tr>
<td align="right">Geschlecht: </td>
<td align="left">männlich<input name="gender" type="radio" value="m" id="mgender" onclick="Fill(this);"/>
<input name="gender" type="radio" value="w" onclick="Fill(this);"/> weiblich
</td>
<td>*</td>
</tr>
<tr>
<td align="right">Altersklasse: </td>
<td align="left"><select name="altersklasse" id="aklasse" size="1">
<option value="00">Select First</option>
</select></td>
</tr>
PHP代码
<?php
if(empty($_POST['aklasse']))
$aklasse = "";
else
$aklasse = $_POST['aklasse'];
if($aklasse =="")
echo "Altersklasse wurde nicht ausgewählt<br>";
else
{
switch ($gender)
{
case "m":
if(($aklasse == "8") || ($aklasse == "6") || ($aklasse == "4") || ($aklasse == "2") || ($aklasse == "B"))
echo "Ihre Angabe ist ungültig. Geschlecht und Altersklasse müssen übereinstimmen!";
elseif(($aklasse == "7") && (alter($geb) > 12))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "5") && ((alter($geb) < 13) ||(alter($geb) > 15)))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "3") && ((alter($geb) < 16) ||(alter($geb) > 17)))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "1") && ((alter($geb) < 18) ||(alter($geb) > 54)))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "A") && (alter($geb) < 54))
echo "Alter und Altersklasse müssen übereinstimmen";
else
echo "Altersklasse: " .$aklasse ."<br>";
break;
case "w":
if(($aklasse == "7") || ($aklasse == "5") || ($aklasse == "3") || ($aklasse == "1") || ($aklasse == "A"))
echo "Ihre Angabe ist ungültig. Geschlecht und Altersklasse müssen übereinstimmen!";
elseif(($aklasse == "8") && (alter($geb) > 12))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "6") && ((alter($geb) < 13) ||(alter($geb) > 15)))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "4") && ((alter($geb) < 16) ||(alter($geb) > 17)))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "2") && ((alter($geb) < 18) ||(alter($geb) > 54)))
echo "Alter und Altersklasse müssen übereinstimmen";
elseif(($aklasse == "B") && (alter($geb) < 54))
echo "Alter und Altersklasse müssen übereinstimmen";
else
echo "Altersklasse: " .$aklasse ."<br>";
break;
}
}
?>
但是使用这段代码,在我提交之后,我无法获得值(在php中)。我总是得到没有选择任何东西的消息。没有减少选择框(但我不想这样),它工作正常,但我想这样:如果我检查值为m(男性)的单选按钮:填充选择框与新阵列。或者值w(女性):再次填充另一个列表。希望能跟大家明白我想知道(我的英语心不是最好的)
你能为同样的创建一个jsfiddle吗? –
嗯,这个问题可能是在你的PHP代码中,但你不显示给我们,所以很难说... –
增加了一个jsfiddle没有PHP的地方,所以我把我的代码放入css – Zezima