Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript获取选中项的复选框列表不起作用_Javascript_Asp.net_Checkboxlist - Fatal编程技术网

使用javascript获取选中项的复选框列表不起作用

使用javascript获取选中项的复选框列表不起作用,javascript,asp.net,checkboxlist,Javascript,Asp.net,Checkboxlist,我从复选框列表中选择了2个项目,下面是我尝试的代码,我得到的错误如下 未定义属性 这是我的密码 var checkboxlist = document.getElementById('<%= ddlStatus.ClientID %>'); var checkOptions = checkboxlist.getElementsByTagName('input'); var listSelected = checkboxlist.getElement

我从
复选框列表中选择了2个项目,下面是我尝试的代码,我得到的错误如下

未定义属性

这是我的密码

var checkboxlist = document.getElementById('<%= ddlStatus.ClientID %>');
        var checkOptions =   checkboxlist.getElementsByTagName('input');
        var listSelected = checkboxlist.getElementsByTagName('span');

        for(i = 0; i < checkOptions.length; i++)
        {
            if(checkOptions[i].checked)
            {
                alert(listSelected[i].attributes["STATUS"].value);
            }
        }
var checkboxlist=document.getElementById(“”);
var checkOptions=checkboxlist.getElementsByTagName('input');
var listSelected=checkboxlist.getElementsByTagName('span');
对于(i=0;i
请告诉我如何获得所选值

更新

选中两项,对复选框列表进行微调


首先,在JSFIDLE中,您的复选框标题位于
标签中,而不是
span
,因此请更改此行:

var listSelected = checkboxlist.getElementsByTagName('span');
致:

除此之外,这些标签上没有名为“
”STATUS“
的属性,我已经更新了您的小提琴-请参见此处

更新

获取最后一个选定值的最终代码,与IE8兼容

 var checkboxlist = document.getElementById('ddlStatus');
 var checkOptions =   checkboxlist.getElementsByTagName('input');
 var listSelected = checkboxlist.getElementsByTagName('label');
 var last_val = '';
 for(i = 0; i < checkOptions.length; i++)
        {
            if(checkOptions[i].checked)
            {
                last_val = listSelected[i].textContent || listSelected[i].innerText; // so it works in IE8 and lower
            }
        }
 alert(last_val);
var checkboxlist=document.getElementById('ddlStatus');
var checkOptions=checkboxlist.getElementsByTagName('input');
var listSelected=checkboxlist.getElementsByTagName('label');
var last_val=“”;
对于(i=0;i
是的,我没有身份。那么,如何设置从列表中选择的变量中的值呢?您的意思是提醒选中复选框的值?如下所示:
alert(checkOptions[i].value)是的,就是这个。这里还有一件事,如何设置最后选择的值??将最后选择的值放入变量中?您可以将其存储到一个变量中,并在循环中赋值,它将留给您最后一个-。您也可以存储到数组,然后取最大值,这取决于您的需要我得到的值为20,但在我的列表中,
协议
被选中。这是我的完整代码在小提琴更新小提琴
 var checkboxlist = document.getElementById('ddlStatus');
 var checkOptions =   checkboxlist.getElementsByTagName('input');
 var listSelected = checkboxlist.getElementsByTagName('label');
 var last_val = '';
 for(i = 0; i < checkOptions.length; i++)
        {
            if(checkOptions[i].checked)
            {
                last_val = listSelected[i].textContent || listSelected[i].innerText; // so it works in IE8 and lower
            }
        }
 alert(last_val);