Javascript我可以仅在单击它(onclick事件)时将项目添加到下拉列表中吗?

时间:2013-03-29 05:42:32

标签: javascript

我们是否可以仅在点击下拉列表时将项目添加到下拉列表中?我发布了如下的onclick事件:

<select id="DeptStr" style="width: 114px" onchange="Call()" onclick = "GetDept()">

GetDept()是将项​​添加到下拉列表中的功能。

但是我的结果是,每次点击下拉列表时,它都会将项目列出大约1秒钟,然后列表重新开始。我没有时间选择任何项目。你们知道为什么吗?

我的GetDept()如下所示:

            cb=ObjByID('cbDeptStr');
            i=cb.length;
            while(i>0)
            { 
                cb.remove(1);
                i--;
            }
            var oOption;
            var rows = ret.substr(4).split('|');                
            var n;           

            for (var i = 1; i < rows.length; ++i)
            {
                n=rows[i].substr(0,4);
                if (n.length!=4)
                    break;
                oOption = document.createElement("option");             
                cb.options.add(oOption,i);
                oOption.innerHTML=n;
                oOption.value=n;

            }

1 个答案:

答案 0 :(得分:0)

  

“每当我点击下拉列表时,它都会列出项目   只有大约1秒,列表重新开始。我没时间   选择任何项目。你们知道为什么吗?“

这是因为当你点击下拉列表时会触发onClick处理程序,这会将焦点拉离<select>元素。当它失去焦点时,它会隐藏选项。