我创建了一个依赖于单选按钮单击列表框现在将显示如果用户单击一个单选按钮列表框将显示并再次用户选择其他选项但它不清楚列表框的先前值如何通过javascript清除它??? ?
<script language="JavaScript" type="text/javascript">
function fun(s)
{
if(s==B)
{
document.getElementById("maingroup").style.display='none';
document.getElementById("subgroup").style.display='';
document.getElementById("itemname").style.display='none';
}
if(s==C)
{
document.getElementById("maingroup").style.display='none';
document.getElementById("subgroup").style.display='none';
document.getElementById("itemname").style.display='';
}
</script>
答案 0 :(得分:1)
这是我的想法(未经测试)。为每个列表框指定一个类名class='lst'
。之后,当您单击单选按钮时,只需使用:
`document.getElementsByClassName('lst').style.display = 'none';`
并显示当前列表框。
`document.getElementsByClassName('currentListboxID').style.display = 'block';`
这是DEMO
答案 1 :(得分:1)
试试这个:
var listBox = document.getElementById("listboxID");
listBox.innerHTML = "";
答案 2 :(得分:1)
我认为show / hide方法不适合编程。
我不知道它是否有用,但这对你有帮助。
你可以像
一样动态var mainGroup = ["aa","bb","cc"];
var subGourp = ["dd","ee","ff"];
var itemName = ["gg","ee","ff"];
var Country = ["jj","hh","ii"];
var Zone = ["kk","ll","mm"];
if(s == A)
{
var i=0;
var str = "";
for(i=0;i<mainGroup.length;i++)
{
str += "<option value='" + (i+1) + "'>" + mainGroup[i] + "</option>";
}
document.getElementById("maingroup").style.display='';
document.getElementById("maingroup").innerHTML = str;
}
else if(s == B)
{
var i=0;
var str = "";
for(i=0;i<subGourp.length;i++)
{
str += "<option value='" + (i+1) + "'>" + subGourp[i] + "</option>";
}
document.getElementById("maingroup").style.display='';
document.getElementById("maingroup").innerHTML = str;
}