我有一个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);". 现在我在警告框中得到以下输出:
|未定义|
为什么还会发生这种情况?