K T
K T

Reputation: 199

How to remove one item from RadComboBox in javascript

There are 2 RadComboBox in my UI. Depending on one RadComboBox1 selectionChanged I want to remove one item from RadComboBox2.

I have tried,but not able to remove the item from RadComboBox2. My code:

<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
    <script type ="text/javascript" language="javascript" >
        function ComboBox1_SelectionChanged(sender, eventArgs) {
            var d = $find("<%=ComboBox2.ClientID%>");
            var item = eventArgs.get_item();
            if (item.get_text() == 'Check Out') {
                d.disable();
                d.set_text('N/A');
            }
            else {
                d.enable();
                var items = d.get_items();
                var comboItem = d.findItemByText("N/A"); //remove "N/A" and want to select "A"
                items.remove(comboItem);
                d.set_text('A');

            }
        }
    </script>
    </telerik:RadScriptBlock>

Upvotes: 1

Views: 3557

Answers (1)

Gabriel Espinoza
Gabriel Espinoza

Reputation: 413

I think you are missing the "trackChanges" property in that code. I wrote my own code for testing and worked perfect.

Let me know if there is something else I can help :)

<telerik:RadComboBox runat="server" ID="rcb1" Label="ComboBox 1" OnClientSelectedIndexChanged="rcb1_SelectedIndexChanged">
    <Items>
        <telerik:RadComboBoxItem Text="Select Something" Value="0" />
        <telerik:RadComboBoxItem Text="Item 1" Value="1" />
        <telerik:RadComboBoxItem Text="Item 2" Value="2" />
        <telerik:RadComboBoxItem Text="Item 3" Value="3" />
    </Items>
</telerik:RadComboBox>

<telerik:RadComboBox runat="server" ID="rcb2" Label="ComboBox 2">
        <Items>
        <telerik:RadComboBoxItem Text="Item 1" Value="1" />
        <telerik:RadComboBoxItem Text="Item 2" Value="2" />
        <telerik:RadComboBoxItem Text="Item 3" Value="3" />
    </Items>
</telerik:RadComboBox>
<telerik:RadScriptBlock runat="server" ID="sb1">
    <script>
        function rcb1_SelectedIndexChanged(sender, eventArgs) {

            var item = eventArgs.get_item();
            var d = $find("<%=rcb2.ClientID%>");

            var comboItem = d.findItemByValue(item.get_value());
            if (comboItem) {
                d.trackChanges();
                d.get_items().remove(comboItem);
                d.commitChanges();
            }
        }
    </script>
</telerik:RadScriptBlock>

Upvotes: 1

Related Questions