在后边文字不加任何标签的情况下如<span>港澳通行证</span> or <div>港澳通行证</div>
这样我们可以childNodes[1]来完成,除以上方法有什么办法做到

解决方案 »

  1.   

    function clk(li)
    {
    var chk = li.firstChild;
    var o = chk.nextSibling.nodeValue;
    alert(o);
    }
      

  2.   

    不是很明白你说什么?
    <li onclick='clk(this)'> <input type="checkbox" value="港澳通行证" />港澳通行证 </li> 
    childNodes[1]就可以取得港澳通行
      

  3.   


    可以获得,不过功能实现这样的,获取后,要加上HTML元素,,这样。chk.nextSibling.nodeValue = "<label>"+o+"</label";
    可以吗?
    试了不行。。
      

  4.   


    要使用childNodes[1]获取INPUT后边的文字值,需要加元素标签。
      

  5.   

    可以这样写:
    <li onclick='clk()'><input id="id12" type="checkbox" value="港澳通行证" /><span>港澳通行证</span> </li> 
    <script>
    function clk(){ 
    //代码类似如下 
    alert(document.getElementById("id12").nextSibling.innerHTML);

    </script>document.getElementById("id12").nextSibling这个表示document.getElementById("id12")的下一个节点对象。
      

  6.   

    不需要加元素标,他就是个文本节点.
    <li onclick="clk(this)"><input id="id12" type="checkbox" value="港澳通行证" />港澳通行证</li>  
    <script> 
    function clk(a){  
    //代码类似如下  
    alert(a.childNodes[1].nodeValue); 
    }  
    </script> 
    你试下就知道
      

  7.   

    <head>
    <script language="javascript">
    function clk(li)
    {
    var chk = li.firstChild;
    var o = chk.nextSibling;

    var label = document.createElement("label");
    label.innerHTML = o.nodeValue + "加文字,表示不同";


    li.appendChild(label);

    li.removeChild(o);
    //alert(o);
    }
    </script>
    </head>
    <body>

    <ul><li onclick='clk(this)'><input type="checkbox" value="港澳通行证" />港澳通行证 </li></ul>

    </body>
      

  8.   


    不知道你说得什么?????看明白,再发言,不知所云。感谢redleaf1995 。。
      

  9.   

    [Quote=引用 5 楼 tjj36 的回复:]
     要使用childNodes[1]获取INPUT后边的文字值,需要加元素标签。
    [Quote]
    [Quote=引用 10 楼 tjj36 的回复:]
    不知道你说得什么?????看明白,再发言,不知所云。 感谢redleaf1995 。。/
    [Quote]