我有一个asp:CheckBox
带有以下标签的:
<asp:CheckBox ID="cbTest1" runat="server" onchange="cbChange(this.id);"/>
cbChange
是一个 Javascript 函数<head>
,看起来像这样(现在很简单):
<script type="text/javascript">
function cbChange(senderID) {
alert('|' + senderID + '|'); // '|' is to help see string length
return false;
}
</script>
现在,每当我单击 时cbTest1
,我都会收到带有以下文本的警报框:
||
换句话说,它是一个空/空字符串。我还应该注意,当我使用更传统的方法时<input>
,我会得到预期的结果:
(代码<input>
)
<input type="checkbox" name="cbtest2" id="cbtest2" onchange="cbChange(this.id);" />
(当我检查时警告框中的文本cbtest2
)
|cbtest2|
为什么我会使用 获取空/空字符串asp:Checkbox
,但使用<input>
?
编辑我做了更多的研究,因为asp:CheckBox
有ID
属性而不是 (lowercase) id
,所以我尝试了onchange="cbChange(this.ID);"
. 现在我在警告框中得到以下输出:
|未定义|
为什么还会发生这种情况?