gpt4 book ai didi

asp.net - Telerik RadComboBox javascript API 问题

转载 作者:行者123 更新时间:2023-11-29 10:00:24 25 4
gpt4 key购买 nike

我在使用 Telerik 的 RadComboBox 的 javascript API 时遇到了问题。不,我没有能力从 Telerik 切换到 jQuery 或其他框架。我只想说我现在头上几乎没有头发了:P

简而言之 我想获取一个 RadComboBox 的选定索引,并将另一个 RadComboBox 更新到该索引。例如。在第一个 RCB 中选择一个值会自动更新客户端的第二个。我的问题确实是我找不到在第二个 RCB 上设置索引的方法,即使文档说有一种简单的方法可以做到这一点..(你之前听说过那个:)

我遵循了此页面 (telerik docs) 上的 API 文档,还使用了 IE8 中的 javascript 调试器和 Firefox 中出色的 FireBug。我使用的是 Telerik.Web.UI 程序集版本 2009.2.826.20

我不需要完整的解决方案来源,但如果能向正确的方向插入,我将不胜感激! :)

这是我一起编写的一些示例代码:


    <form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />

<script type="text/javascript" language="javascript">
function masterChanged(item)
{
var detailCB = <%= DetailCB.ClientID %>;

var index = item.get_selectedIndex();
detailCB.SetSelected(index); //method does not exist, but should according to the docs..

}
</script>

<div>
<telerik:RadComboBox ID="MasterCB" runat="server" OnClientSelectedIndexChanged="masterChanged">
<Items>
<telerik:RadComboBoxItem Text="One" Value="1" runat="server" />
<telerik:RadComboBoxItem Text="Two" Value="2" runat="server" />
<telerik:RadComboBoxItem Text="Three" Value="3" runat="server" />
</Items>
</telerik:RadComboBox>
</div>

<div>
<telerik:RadComboBox ID="DetailCB" runat="server">
<Items>
<telerik:RadComboBoxItem Text="One" Value="1" runat="server" />
<telerik:RadComboBoxItem Text="Two" Value="2" runat="server" />
<telerik:RadComboBoxItem Text="Three" Value="3" runat="server" />
</Items>
</telerik:RadComboBox>
</div>
</form>

我不需要完整的解决方案源代码,但如果能向正确的方向发展,我们将不胜感激! :)

最佳答案

非常感谢 Veselin Vasilev 和 stefpet 的投入。经过太多小时的 js 调试和同上咖啡杯,我确实让它可以与 IE8 和 FF3.5 一起使用。

用于更新并行 RadComboBox 的正确 javascript 事件处理程序(响应 OnClientSelectedIndexChanged 事件):

    function masterChanged(sender, e)
{
var detailCB = $find("<%= DetailCB.ClientID %>");

var item = e.get_item();
var index = item.get_index(); //get selectedIndex in master
var allDetailItems = detailCB.get_items();
var itemAtIndex = allDetailItems.getItem(index); //get item in detailCB
itemAtIndex.select();
}

这当然可以通过在一条线路上进行多次调用来缩短。我认为可能有一种方法可以用更少的代码来做到这一点,但我几乎尝试了所有方法,这是唯一对我有用的解决方案。

关于asp.net - Telerik RadComboBox javascript API 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1832522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com