<script type="text/javascript">
function display(y){$(y).style.display=($(y).style.display=="none")?"":"none";} 
function $(s){return document.getElementById(s);}function add(x){
var temp=document.getElementById("class");
var newli=document.createElement("li");temp.appendChild(newli);
var newline=document.createElement("br");
temp.appendChild(newline);newli.innerHTML="<a href=### onclick='display(x)'>"+$(x).value.toString()+"</a>";}
</script>
测试如下:<a href="#"  onclick="add('class5')"  ><input type="checkbox" name="color" value="red" id="class5" >red</a>我现在遇到的问题是newli.innerHTML="<a href=### onclick='display(x)'>"+$(x).value.toString()+"</a>";里面调用display()时没有反应,其中display的作用是点击超链接时进行隐藏。各位帮我看看为什么调用不到呢,谢谢啦!

解决方案 »

  1.   

    超链接有display属性吗?试试把超链接所在容器隐藏行不行
      

  2.   

    function add(x){
    var temp=document.getElementById("class");
    var newli=document.createElement("li");temp.appendChild(newli);
    var newline=document.createElement("br");
    temp.appendChild(newline);//newli.innerHTML="<a href=### onclick='display(x)'>"+$(x).value.toString()+"</a>";
      newli.innerHTML="<a href=### onclick='display(\""+x+"\")'>"+$(x).value.toString()+"</a>";}
      

  3.   

    我应该传一个li的参数,而不是checkbox的参数,在add()里加了一句newli.setAttribute("id","class7"),然后再href里调用display('id'),但是还实现不了.用了2楼大哥的那种方法之后,虽然调用了但是没有先显示就直接给隐藏了,哎,帮忙啊,谢谢谢谢谢谢
      

  4.   

    onclick="add('class5')" ><input type="checkbox" name="color" value="red" id="class5" 楼主指定给add的参数class5,就是checkbox的名称,自然就隐藏复选框了。
    这个得楼主自己把思路搞清楚才行。
    var temp=document.getElementById("class");
    这个也不知怎么回事,哪里有ID叫class的对象?
    感觉整个大体思路都是很混乱的。
    楼主不要谈具体代码了,只要说你想什么功能就好了。
      

  5.   

    onclick="add('class5')" ><input type="checkbox" name="color" value="red" id="class5" 楼主指定给add的参数class5,就是checkbox的名称,自然就隐藏复选框了。
    这个得楼主自己把思路搞清楚才行。
    var temp=document.getElementById("class");
    这个也不知怎么回事,哪里有ID叫class的对象?
    感觉整个大体思路都是很混乱的。
    楼主不要谈具体代码了,只要说明白你想要什么功能就好了。
      

  6.   

    onclick="add('class5')" ><input type="checkbox" name="color" value="red" id="class5" 楼主指定给add的参数class5,就是checkbox的名称,自然就隐藏复选框了。
    这个得楼主自己把思路搞清楚才行。
    var temp=document.getElementById("class");
    这个也不知怎么回事,哪里有ID叫class的对象?
    感觉整个大体思路都是很混乱的。
    楼主不要谈具体代码了,只要说明白你想要什么功能就好了。
      

  7.   


    恩,class是<ul>的id,我没把这部分写上去。
    要实现的功能大致如下:
    左边有一个复选框,其文本内容比如是“单价”,点击它,“单价”会显示在右边的列表中并且是超链接的形式。然后,再在列表中点击这个超链接,此超链接就隐藏了,这时候就看不到“单价”这个链接了。
    这样清楚吗?请帮忙了