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
、次のテキストを含むアラート ボックスが表示されます。
||
つまり、空/null 文字列です。<input>
また、より伝統的なものを使用すると、期待される結果が得られることにも注意してください。
( のコード<input>
)
<input type="checkbox" name="cbtest2" id="cbtest2" onchange="cbChange(this.id);" />
(チェックしたときの警告ボックス内のテキストcbtest2
)
|cbtest2|
でヌル/空の文字列を取得するのに、asp:Checkbox
で期待される動作を取得するのはなぜ<input>
ですか?
EDITには(lowercase) の代わりに属性asp:CheckBox
があるため、もう少し調査を行ったので、試してみました。これで、アラート ボックスに次の出力が表示されます。ID
id
onchange="cbChange(this.ID);"
|未定義|
なぜこれも起こるのでしょうか?