关于修改TreeView.htc的问题
我想在客户端实现选中父节点(使用checkbox),自动选中所有子节点(总共两层即可),方法是修改treeview.htc文件中的doCheckboxClick函数,但是运行时有问题:如果节点未曾被展开过,那么选中父节点,确实可以选中子节点,而且绝对没有闪烁,但是一旦一个节点被展开过,页面上的选中状态就不会随之更新(虽然数据是对的)。请高手指教!
treeview.htc文件中的doCheckboxClick函数开头添加如下行:
if(typeof(allchecked)!="undefined" && el.children.tags("treenode").length) {
var col=el.children.tags("treenode");
for (var i = 0; i < col.length; i++)
col(i).checked =!col(i).checked;
}
aspx页面上只有一个treeview控件:
<iewc:TreeView id="TreeView2" style="Z-INDEX: 102; LEFT: 388px; POSITION: absolute; TOP: 22px" runat="server" Width="322px" Height="237px" allchecked="yes">
<iewc:TreeNodeType CheckBox="True"></iewc:TreeNodeType>
<iewc:TreeNode CheckBox="True" Text="Node0">
<iewc:TreeNode CheckBox="True" Text="Node1"></iewc:TreeNode>
<iewc:TreeNode CheckBox="True" Text="Node2"></iewc:TreeNode>
<iewc:TreeNode CheckBox="True" Text="Node4"></iewc:TreeNode>
<iewc:TreeNode CheckBox="True" Text="Node5"></iewc:TreeNode>
</iewc:TreeNode>
<iewc:TreeNode CheckBox="True" Text="Node3">
<iewc:TreeNode CheckBox="True" Text="Node6"></iewc:TreeNode>
<iewc:TreeNode CheckBox="True" Text="Node7"></iewc:TreeNode>
</iewc:TreeNode>
</iewc:TreeView></FONT></form>
ps:该修改受到
http://expert.csdn.net/Expert/topic/1209/1209815.xml?temp=.1173059
的启发