从另一个选择后设置一个下拉菜单

时间:2010-02-18 16:30:16

标签: javascript html

我有几个选择元素:

<select name="empID" onchange='setSupervisor(this);'>
    <option value="111" sid="222">Eric Employee</option>
    ...
</select>

<select name="supervisorID">
    <option value="333">Susie Supervisor</option>
    <option value="222">Stan Supervisor</option>
</select>

一个javascript函数:

function setSupervisor(sender)
{
    ??
}

如何在用户从员工下拉列表中选择后设置主管下拉菜单?这里棘手的部分(至少对我而言)是必须使用自定义sid而不是员工下拉列表中的值。

2 个答案:

答案 0 :(得分:0)

试试这个:

var empID = document.getElementsByName("empID").item(0);
var supervisorID = document.getElementsByName("supervisorID").item(0); //This becomes a bit easier if you set an ID as well as a name in your HTML    
var index = empID.selectedIndex;
var sid = empID.options[index].getAttribute("sid");
for(var i=0; i<supervisorID.options.length; i++)
{
    if(supervisorID.options[i].value == sid)
    {
        supervisorID.selectedIndex = i;
        break;
    }
} 

答案 1 :(得分:0)

function setSupervisor(sender) {
    var selectedOption = sender.getElementsByTagName("option")[sender.selectedIndex];
    var sid = selectedOption.getAttribute("sid");

    var supervisorSelect = document.getElementsByName("supervisorID")[0];
    for (var i = 0, len = supervisorSelect.options.length, option; i < len; ++i) {
        option = supervisorSelect.options[i];
        if (option.value == sid) {
            option.selected = true;
            return;
        }
    }
}