我有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(女性):再次填充另一个列表。希望你们明白我想知道的事情(我的英语不是最好的)
答案 0 :(得分:0)
如果我没弄错的话......不应该这样:
$aklasse = $_POST['aklasse'];
这是吗?
$aklasse = $_POST['altersklasse'];
name
用于从POST获取值,而不是元素的ID标记。