我是HTML和javascript的新手。正在玩它并面对这个问题。我有一张桌子,这张桌子的每一行都有一个下拉框和一个按钮。当我点击按钮时,我尝试从相应的下拉框中提取值。但是我总是从第一个下拉框中获取值,这不是我想要的。
<tr>
<td><?php $version=$row->getVersionNumbers() ?>
<select id="drop1" name="version" class="temp">
<?php foreach($version as $ver): ?>
<option value="<?php echo $ver?>"><?php echo $ver?></option>
<?php endforeach; ?> </td>
</select>
<td style="text-align:center;">
<a class="btn" href="<?php echo
$view['router']->generate('ProjectMonstroTameBundle_view', array('versi'=>1 )) ?>"
onclick="viewSchema(this,pullVersion(document.getElementById('drop1')))">View Schema</a>
</td>>
</tr>
<script>
function pullVersion(dropdown)
{
return dropdown.options[dropdown.selectedIndex].value;
}
</script>
onclick pullVersion总是从第一个下拉框中获取版本号...任何人都可以帮我解决这个问题
答案 0 :(得分:1)
对于选项都有值的单个选择,您只需使用select元素的value属性:
document.getElementById('drop1').value;
如果元素是多重选择,则需要迭代选项并获取所选元素的值:
var sel = document.getElementById('drop1');
var values = [];
for (var i=0, iLen = sel.options.length; i<iLen; i++) {
if (sel.options[i].selected) {
values.push(sel.options[i].value);
}
}
答案 1 :(得分:0)
此
document.getElementById("drop1").options[document.getElementById("drop1").selectedIndex].value
应该