我在这里的另一个条目中发现了这段代码,它工作得很好,除了如果从选择框中选择了颜色,则文本字段将被什么都不覆盖,因此POST中不会发送任何内容。有人能帮忙吗?
<html>
<head>
<script type="text/javascript">
function CheckColors(val){
var element=document.getElementById('color');
if(val=='pick a color'||val=='others')
element.style.display='block';
else
element.style.display='none';
}
</script>
</head>
<body>
<select name="color" onchange='CheckColors(this.value);'>
<option>pick a color</option>
<option value="red">RED</option>
<option value="blue">BLUE</option>
<option value="others">others</option>
</select>
<input type="text" name="color" id="color" style='display:none;'/>
</body>
</html>
谢谢,
John
您似乎需要将所选颜色设置为文本框在Javascript部分中,更改为:
if(val=='pick a color'||val=='others'){ //Always use curly brackets
element.style.display='';
element.value = '';
}
else {
element.style.display='none';
element.value = val;
}