我试图根据更改下拉菜单的更改结果来通过JavaScript重新提交我的网页。下拉菜单是通过SQL查询创建的。
html/php
<td> Workorder/IO: <select id = "WOIODD" name="WO/IO" onchange="getVal()">
<?php
foreach($WoIo as $workorder)
{
echo '<option>'.$workorder.'</option>';
}
?>
</select>
</td>
</tr>
<?php $currentWo=($_GET['cwo']); ?>
JavaScript
function getVal()
{
var currentVal = document.getElementById('WOIODD').value;
location.href="?cwo="+currentVal;
}
问题是document.getElementById.value什么都没有返回。该值不是零,但没有任何返回。当我尝试修复JavaScript时,即使有条件地运行没有零值,Alert(CurrentVal)即使在有条件运行后也显示一个空白框。我需要能够根据工作订单下拉菜单中选择的选项运行另一个查询。
关于为什么会发生这种情况,如何修复甚至替代方法的任何想法?
谢谢,joshua
问题已解决。首先,Java脚本更改为
function getVal(dropdown)
{
var currentVal = dropdown.value;
location.href="?cwo="+currentVal;
}
然后将HTML/PHP更改为
<td> Workorder/IO: <select id = "WOIODD" name="WO/IO" onchange="getVal(this)">
<?php
foreach($WoIo as $workorder)
{
echo '<option value="'.$workorder.'">'.$workorder.'</option>';
}
?>
基本上,它没有评估每个选项的值,因此我明确评估了每个值。
谢谢大家的评论,这有助于我指向正确的方向