or
function
OnNodeChecked(sender,eventArgs) {
var tree = $find('rdtOutputColumns');
var button = $get("btnOK");
if (tree.get_checkedNodes().length > 0) {
button.disabled = false;
}
else {
button.disabled =
true;
}
}
This works fine for intially enabling the button when a user checks one or more of the child nodes but if previously checked nodes are unchecked then the get_checkedNodes().length reports that 1 node is still checked and so my button is never disabled again.
Has anybody got any ideas as to why the get_checkNodes() function is returning a node that is no longer checked?
Many thanks
Antony

<link href="App_Themes/Grid.TestStyle.css" rel="stylesheet" type="text/css" /> <link href="App_Themes/Menu.TestStyle.css" rel="stylesheet" type="text/css" /> <link href="App_Themes/Input.TestStyle.css" rel="stylesheet" type="text/css" /> <link href="App_Themes/Slider.TestStyle.css" rel="stylesheet" type="text/css" /> <link href="App_Themes/Calendar.TestStyle.css" rel="stylesheet" type="text/css" /><telerik:RadGrid ID="RadGrid1" runat="server" AllowFilteringByColumn="True" AllowPaging="True" AllowSorting="True" DataSourceID="SqlDataSource1" GridLines="None" Skin="TestStyle" Width="750px" AllowAutomaticDeletes="True" AllowAutomaticUpdates="True" onitemupdated="RadGrid1_ItemUpdated" Culture="en-GB" EnableEmbeddedSkins="False"> <MasterTableView DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="Purchaser"> <CommandItemSettings ExportToPdfText="Export to Pdf" /> <RowIndicatorColumn FilterControlAltText="Filter RowIndicator column"> </RowIndicatorColumn> <ExpandCollapseColumn FilterControlAltText="Filter ExpandColumn column"> </ExpandCollapseColumn> <Columns> <telerik:GridBoundColumn DataField="Purchaser" FilterControlAltText="Filter Purchaser column" HeaderText="Purchaser" ReadOnly="True" SortExpression="Purchaser" UniqueName="Purchaser"> <ItemStyle Width="150px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="PurchaserName" FilterControlAltText="Filter PurchaserName column" HeaderText="Name" SortExpression="PurchaserName" UniqueName="PurchaserName"> </telerik:GridBoundColumn> <telerik:GridBoundColumn AllowFiltering="False" DataField="ShortName" FilterControlAltText="Filter ShortName column" HeaderText="Short Name" SortExpression="ShortName" UniqueName="ShortName"> </telerik:GridBoundColumn> <telerik:GridEditCommandColumn ButtonType="ImageButton" FilterControlAltText="Filter EditCommandColumn column" CancelImageUrl="Cancel.gif" EditImageUrl="Edit.gif" InsertImageUrl="Update.gif" UpdateImageUrl="Update.gif"> </telerik:GridEditCommandColumn> <telerik:GridButtonColumn ButtonType="ImageButton" CommandName="Delete" ConfirmText="Are you sure you wish to delete this record?" FilterControlAltText="Filter column column" Text="Delete" UniqueName="column"> </telerik:GridButtonColumn> </Columns> <EditFormSettings EditFormType="Template"> <EditColumn FilterControlAltText="Filter EditCommandColumn column" CancelImageUrl="Cancel.gif" EditImageUrl="Edit.gif" InsertImageUrl="Update.gif" UpdateImageUrl="Update.gif"> </EditColumn> <FormTemplate> <table style="width:100%;"> <tr> <td style="text-align: right; width: 129px"> Name:</td> <td> <asp:TextBox ID="TextBox2" runat="server" MaxLength="50" Text='<%# Bind("PurchaserName") %>' Width="150px"></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox2" Display="None" ErrorMessage="Name is required!" ValidationGroup="VG1"></asp:RequiredFieldValidator> <asp:ValidatorCalloutExtender ID="RequiredFieldValidator1_ValidatorCalloutExtender" runat="server" Enabled="True" TargetControlID="RequiredFieldValidator1"> </asp:ValidatorCalloutExtender> </td> </tr> <tr> <td class="style4" style="width: 129px; text-align: right"> Short Name:</td> <td> <asp:TextBox ID="TextBox3" runat="server" MaxLength="15" Text='<%# Bind("ShortName") %>' Width="110px"></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox3" Display="None" ErrorMessage="Short name is required!" ValidationGroup="VG1"></asp:RequiredFieldValidator> <asp:ValidatorCalloutExtender ID="RequiredFieldValidator2_ValidatorCalloutExtender" runat="server" Enabled="True" TargetControlID="RequiredFieldValidator2"> </asp:ValidatorCalloutExtender> </td> </tr> <tr> <td class="style4" style="width: 129px; text-align: right"> Type:</td> <td> <asp:DropDownList ID="DropDownList5" runat="server" SelectedValue='<%# Bind("Type") %>'> <asp:ListItem>Non-Midlands</asp:ListItem> <asp:ListItem>Midlands</asp:ListItem> </asp:DropDownList> </td> </tr> <tr> <td class="style4" style="width: 129px; text-align: right"> Sort Order:</td> <td> <asp:TextBox ID="TextBox4" runat="server" MaxLength="3" Text='<%# Bind("SortOrder") %>' Width="50px"></asp:TextBox> </td> </tr> <tr> <td class="style4" style="width: 129px; text-align: right"> Corp Forms Group:</td> <td> <asp:DropDownList ID="DropDownList6" runat="server" DataSourceID="SqlDataSource2" DataTextField="corpformsgroup" DataValueField="corpformsgroup" SelectedValue='<%# Bind("CorpFormsGroup") %>'> </asp:DropDownList> </td> </tr> <tr> <td class="style4" style="width: 129px; text-align: right"> Corp Forms Sort:</td> <td> <asp:TextBox ID="TextBox5" runat="server" MaxLength="3" Text='<%# Bind("CorpFormsSort") %>' Width="50px"></asp:TextBox> </td> </tr> <tr> <td class="style4" style="width: 129px; text-align: right"> NHS Net Address:</td> <td> <asp:TextBox ID="TextBox6" runat="server" Text='<%# Bind("NHSNetAddress") %>' Width="350px"></asp:TextBox> </td> </tr> </table> <br /> <table style="width: 300px;"> <tr> <td style="width: 94px"> <telerik:RadButton ID="RadButton1" runat="server" CommandName="Update" Skin="WebBlue" Text="Update" ValidationGroup="VG1"> </telerik:RadButton> </td> <td> <telerik:RadButton ID="RadButton2" runat="server" CausesValidation="False" CommandName="Cancel" Skin="WebBlue" Text="Cancel"> </telerik:RadButton> </td> </tr> </table> </FormTemplate> </EditFormSettings> </MasterTableView> <FilterMenu EnableImageSprites="False"> </FilterMenu> <HeaderContextMenu CssClass="GridContextMenu GridContextMenu_Default"> </HeaderContextMenu> </telerik:RadGrid><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ManageData.aspx.cs" Inherits="MasterDataManagementSystem.ManageData" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> .rcbHeader ul, .rcbFooter ul, .rcbItem ul, .rcbHovered ul, .rcbDisabled ul { width: 100%; display: inline-block; margin: 1; padding: 0; list-style-type: none; font-family : Verdana; font-size:8pt; } .rcbColumn { font-family:Verdana; font-size:8pt; float: left; margin: 1; line-height: 14px; padding: 2px 5px 2px 0; } .rcbColumn li { vertical-align:middle; } </style> </head> <body> <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> <script type="text/javascript"> <!-- function stopPropogation(e) { e.cancelBubble = true; if (e.stopPropagation) { e.stopPropagation(); } } function callAttachDropDown() { var combo = $find("<%= rcbSourceElement.ClientID %>"); combo.attachDropDown(); } --> </script> </telerik:RadScriptBlock> <form id="form1" runat="server"> <div> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadComboBox1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGrid1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" Runat="server" Skin="Default"> </telerik:RadAjaxLoadingPanel> <telerik:RadComboBox ID="rcbSourceElement" runat="server" HighlightTemplatedItems="True" DataTextField="PrimaryFieldValue" AutoPostBack="true" Width="400px" Height="200px" DataValueField="ELEMENT_VALUE_KEY" DataSourceID="odsSourceElement" AllowCustomText="True" EmptyMessage="Choose an option here..."> <ItemTemplate> <div onclick="stopPropagation(event)"> <asp:CheckBox ID="chkSourceElementValue" runat="server" AutoPostBack="true" onclick="callAttachDropDown()" Text='<%# Eval("PrimaryFieldValue") %>' oncheckedchanged="chkSourceElementValue_CheckedChanged"/> </div> </ItemTemplate> </telerik:RadComboBox> <asp:ObjectDataSource ID="odsSourceElement" runat="server" SelectMethod="GetSourceElementValuesForDisplayInSubjectTab" TypeName="MasterDataMgmt.BL.Helper"> <SelectParameters> <asp:Parameter Name="TargetSubjectKey" DefaultValue="1" Type="Int32" /> </SelectParameters> </asp:ObjectDataSource> <telerik:RadGrid ID="RadGrid1" runat="server"> </telerik:RadGrid> </div> </form> </body> </html>