Telerik RadComboBox仅在第二次单击时打开

时间:2012-03-20 14:02:24

标签: javascript telerik

我是telerik组件的新手,我有一个奇怪的问题。

我正在通过JS根据另一个组合框选择调用RadComboBox来填充requestItems

数据填充正确,但只有当我第二次点击组合框时才能直观地显示列表。

在来源中,数据存在,但所有rcbItem都显示为无,rcbScroll rcbWidthheight of 0px。只有在第二次点击时才会出现列表。

这是JS代码:

//global variables for the countries and cities comboboxes
var ouCombo;
var dsCombo;
var searchBox;

    function pageLoad() {
        ouCombo = $find("<%= UnitRadComboBox.ClientID %>");
        dsCombo = $find("<%= ServiceRadComboBox.ClientID %>");
        searchBox = $find("<%= SearchRadTextBox.ClientID %>")
    }

    function loadDepartments(sender, eventArgs) {
        var item = eventArgs.get_item();
        dsCombo.set_text("A carregar...");
        // if a continent is selected
        if (item.get_index() > 0) {
            // this will fire the ItemsRequested event of the 
            // combobox passing the ID as a parameter 
            dsCombo.requestItems(item.get_value(), false);
        }
        else {
            // the - empty - item was chosen
            dsCombo.set_text(" ");
            dsCombo.clearItems();
        }
    }

    function ItemsLoaded(sender, eventArgs) {
        if (sender.get_items().get_count() > 0) {
            // pre-select the first item
            sender.set_text("Escolha uma opçao");
            //sender.get_items().getItem(0).highlight();
            //sender.showDropDown();
            var radInput = $find("<%= SearchRadTextBox.ClientID %>");
            radInput.focus();
        }
    }

这是标记

 <telerik:RadComboBox ID="UnitRadComboBox" runat="server" OnItemsRequested="UnitRadComboBox_ItemsRequested1"
            HighlightTemplatedItems="true" EnableLoadOnDemand="true" OnClientSelectedIndexChanging="loadDepartments"
            OnClientItemsRequested="ItemsLoaded" LoadingMessage="A carregar..." Skin="Default">
            <CollapseAnimation Type="OutQuint" Duration="200" />
</telerik:RadComboBox>

<telerik:RadComboBox ID="ServiceRadComboBox" runat="server" HighlightTemplatedItems="true"
            EnableLoadOnDemand="true" Filter="StartsWith" OnItemsRequested="ServiceRadComboBox_ItemsRequested"
            OnClientItemsRequested="ItemsLoaded" Width="250px" LoadingMessage="A carregar...">
            <CollapseAnimation Type="OutQuint" Duration="200" />
</telerik:RadComboBox>

1 个答案:

答案 0 :(得分:0)

删除:sender.set_text("Escolha uma opçao");并查看是否有效。