如何在客户端的另一个radcombobox上为telerik批量编辑(ASP.NET)选择的值填充一个Radcombobox?

时间:2016-06-24 06:34:23

标签: asp.net batch-file telerik radgrid radcombobox

我在我的页面中使用两个telerik Radcombobox,具有批量编辑功能。我有一个radcombobox的价值。基于在第一个组合框中选择的值,应该改变第二个组合框中的值。请帮助我解决一些客户端的解决方案

1 个答案:

答案 0 :(得分:1)

  1. 挂钩第一个组合的OnClientSelectedIndexChanged事件:http://docs.telerik.com/devtools/aspnet-ajax/controls/combobox/client-side-programming/events/onclientselectedindexchanged

  2. 获取对第二个的引用:http://docs.telerik.com/devtools/aspnet-ajax/general-information/get-client-side-reference

  3. 使用其set_value()或set_text()方法或实际上您喜欢的API:http://docs.telerik.com/devtools/aspnet-ajax/controls/combobox/client-side-programming/objects/radcombobox-object或者,使用get_items(),检查其属性并选择()所需的项目(如果已经有一个项目清单。

  4. 编辑:基于OP评论的一些进一步细节:

    批量编辑网格适用于客户端,因此您无法拥有纯服务器解决方案。在第一个组合更改时调用webservice,并在数据返回时使用JS创建组合框项:http://docs.telerik.com/devtools/aspnet-ajax/controls/combobox/client-side-programming/objects/radcombobox-object

    在获取对第二个组合的引用时 - 向其添加一个CssClass,获取其DOM对象并使用.control属性,如我链接的第二篇文章所示

    <script>
        function OnClientSelectedIndexChanged(sender, args) {
            var secondCombo = $telerik.$(".secondCombo").get(0).control;//add some defensive checks here
            var selectedValue = args.get_item().get_value();
            var desiredItem = secondCombo.findItemByValue(selectedValue);
            if (desiredItem) {
                desiredItem.select();
            }
        }
    </script>
    <telerik:RadComboBox ID="RadComboBox1" runat="server" OnClientSelectedIndexChanged="OnClientSelectedIndexChanged">
        <Items>
            <telerik:RadComboBoxItem Text="one" Value="1" />
            <telerik:RadComboBoxItem Text="two" Value="2" />
            <telerik:RadComboBoxItem Text="three" Value="3" />
        </Items>
    </telerik:RadComboBox>
    <telerik:RadComboBox ID="RadComboBox2" runat="server" CssClass="secondCombo">
        <Items>
            <telerik:RadComboBoxItem Text="first" Value="1" />
            <telerik:RadComboBoxItem Text="second" Value="2" />
            <telerik:RadComboBoxItem Text="third" Value="3" />
        </Items>
    </telerik:RadComboBox>