Javascript 无法获取属性的值';选中';:对象为空或未定义错误

Javascript 无法获取属性的值';选中';:对象为空或未定义错误,javascript,asp.net,Javascript,Asp.net,我们有一个应用程序,下面的java脚本代码给出了错误 无法获取属性复选框的值 ,我们需要更改以下代码的格式。请帮助以该格式更改以下代码 我有多行代码,如下所示,因此我需要使用预定义变量“crtlName” 我不会为您修改代码,这里有一些示例可以帮助您解决问题 如果我没弄错的话。您的主要问题是如何在javascript中使用像这样的内联表达式。你可以做如下的事情 var checkBox1 = document.getElementById('<%= CheckBox1.ClientID %

我们有一个应用程序,下面的java脚本代码给出了错误

无法获取属性复选框的值

,我们需要更改以下代码的格式
。请帮助以该格式更改以下代码

我有多行代码,如下所示,因此我需要使用预定义变量“crtlName”


我不会为您修改代码,这里有一些示例可以帮助您解决问题

如果我没弄错的话。您的主要问题是如何在javascript中使用像
这样的内联表达式。你可以做如下的事情

var checkBox1 = document.getElementById('<%= CheckBox1.ClientID %>');
然后在代码隐藏中设置
\u checkBoxId

public string _checkBoxId;

protected void Page_Load(object sender, EventArgs e)
{
    _checkBoxId = "CheckBox2";
}
最后,与上面的解决方案相比,我更喜欢使用属性选择器

document.querySelectorAll("input[id*=CheckBox]:checked");

检查实际元素而不是asp定义的值。您确定字段的id为复选框吗?通常,如果obj在getElementById上为null或未定义,那是因为它找不到您正在引用的元素。为什么<代码>document.getElementById(document.getElementById事实上,我们正在动态构建控件,因此,例如,我将名称保留为复选框,这段代码在过去7年中一直有效,可能是因为浏览器中的最新补丁现在不起作用。当我在internet上进行检查时,大多数人建议将旧代码更改为方法,因为我正在构建控件是动态的,我需要在这些字段中使用用户定义的变量,使用该变量时会出错。
public string _checkBoxId;

protected void Page_Load(object sender, EventArgs e)
{
    _checkBoxId = "CheckBox2";
}
document.querySelectorAll("input[id*=CheckBox]:checked");