要在 Client 端改變 CheckBox 物件的屬性有其困難之處。因為 ASP.NET 在 Render 之後,會讓 CheckBox 變成 Span 及 Label 物件,而其文字是放在 Label 物件內,但卻又不會給予它任何 ID。我相信凡是做過這件事的人都有深刻的體會...
2010-01-23
要在 Client 端改變 CheckBox 物件的屬性有其困難之處。因為 ASP.NET 在 Render 之後,會讓 CheckBox 變成 Span 及 Label 物件,而其文字是放在 Label 物件內,但卻又不會給予它任何 ID。我相信凡是做過這件事的人都有深刻的體會...
今天遇到這個問題時,原本還不以為有什麼難,卻沒想到還頗費了一番功夫才終於找出可行的辦法,而且解法看起來不是很 Graceful,有一點點 Hacking 的感覺。基本上我們可以選擇最簡單的做法,那就是使用 For Each li As ListItem In CheckBoxList1.Items 指令去掃描 CheckBoxList1 裡面的所有 CheckBox,看來這也是 ASP.NET 企圖要我們使用的原始方法...