javascript - HTML 复选框的文本

标签 javascript html

HTML

<input type="checkbox" value="One" checked="checked" id="r1" name="g" />

    <label for="r1">
        One
    </label>

    <input type="checkbox" value="Two" id="r2" name="g" />

    <label for="r2">
        Two
    </label>

<input type="button" value="Status" onclick="MyFunction()" />

Javascript

function MyFunction() {
 var chk = document.getElementsByName("g");
   for (var i = 0; i < chk.length; i++) {
      if (chk[i].checked == true) {
         alert("Checkbox at index " + i + " is checked!");
         alert("Text at index " + i + chk[i].nextSibling.innerHTML);
         }
     }
}

在这里,我获取了已选中复选框的索引。 如何获取选中复选框的文本?

演示:http://jsfiddle.net/u95uN/

感谢您的帮助。

最佳答案

因为在许多浏览器中,nextSibling 将是一个空文本节点。

使用nextElementSibling而不是 nextSibling

WORKING DEMO

The ChildNode.nextElementSibling read-only property returns the element immediately following the specified one in its parent's children list, or null if the specified element is the last one in the list.

function MyFunction() {
         var chk = document.getElementsByName("g");
         for (var i = 0; i < chk.length; i++) {

             if (chk[i].checked === true) {
                 alert("Checkbox at index " + i + " is checked!");
                 alert("Text at index " + i + chk[i].nextElementSibling.innerHTML);

             }
         }

     }

     MyFunction();

关于javascript - HTML 复选框的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20756995/

相关文章:

html - 如何使用 Twitter BootStrap 实现下拉式可点击图标菜单?

javascript - Google 图表中的双 y 轴

javascript - AngularJS 过滤器表达式未更新

javascript - 我可以让这个 jQuery 工具提示在我的光标悬停在它上面时保持亮起吗?

javascript - React,如何更改下拉菜单选项? jQuery?

html - CSS3 Columns - 添加第二个元素后的额外宽度

php - 在 HTTP header 中设置到期日期或最长期限

javascript - angular.element().hide() 与 ngIf

Javascript if else 总是返回 2 else if

javascript - 如何在没有外部插件的情况下在 jQuery 中制作一个滚动动画