我有一个带有数组的PHP脚本,它循环显示数月并在下拉列表中显示它们。我想使用javascript从下拉列表中获取所选值。
function month_list()
{
$months = Array("January", "February", "March", "April", "May", "June", "July",
"August", "September", "October", "November", "December");
echo '<select name="month" id="month_list" OnChange="getvalue();">';
foreach ($months as $months => $month)
{
echo'<option OnChange="getvalue();" value='.$month.'>'.$month.'</option>';
}
echo '</select>';
}
使用Javascript:
<script type="text/javascript">
function getvalue()
{
alert(document.getElementById((month_list)).value);
}
</script>
当我选择一个值时,没有任何事情发生,但是在firebug中我得到了错误:
Element referenced by ID/NAME in the global scope. Use W3C standard document.getElementById() instead.
有什么建议吗?
感谢。
答案 0 :(得分:1)
你忘了引用month_list。
document.getElementById("month_list").value
此外,您不需要在各个选项上使用onchange(全部是小写的btw)属性,只需要在select元素上。
答案 1 :(得分:1)
使用
function getvalue()
{
alert(document.getElementById('month_list').value);
}
</script>
相反。
此外,您可以删除每个选项上的onChange,select将执行:)