Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带有复选框的RadComboBox AJAX问题_Javascript_Asp.net_Ajax_Telerik_Radcombobox - Fatal编程技术网

Javascript 带有复选框的RadComboBox AJAX问题

Javascript 带有复选框的RadComboBox AJAX问题,javascript,asp.net,ajax,telerik,radcombobox,Javascript,Asp.net,Ajax,Telerik,Radcombobox,我已经创建了带有复选框列表的radcombobox。用户可以选择多个复选框,当他选中某些项目时,页面上的标签必须更新(this.label.text+=someValue)。我在radcombobox上添加了带有异步触发器的Ajax:UpdatePanel,但问题是当用户检查项下拉列表自行关闭时:(我如何防止关闭下拉列表?这里是我尝试的: <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate>

我已经创建了带有复选框列表的radcombobox。用户可以选择多个复选框,当他选中某些项目时,页面上的标签必须更新(this.label.text+=someValue)。我在radcombobox上添加了带有异步触发器的Ajax:UpdatePanel,但问题是当用户检查项下拉列表自行关闭时:(我如何防止关闭下拉列表?这里是我尝试的:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<telerik:RadComboBox runat="server" ID="rcb" Width="200px" HighlightTemplatedItems="true" 
    AllowCustomText="true" Text="Select Item" MaxHeight="250px" EnableTextSelection="false" AutoPostBack="true"
    OnClientSelectedIndexChanging="OnClientSelectedIndexChanging()">
    <Items>
        <telerik:RadComboBoxItem Value="0" Text="Select..." />
        <telerik:RadComboBoxItem Value="1" Text="Small" />
        <telerik:RadComboBoxItem Value="2" Text="Medium" />
        <telerik:RadComboBoxItem Value="3" Text="Large" />
    </Items>
    <ItemTemplate>        
            <asp:CheckBox onclick="stopPropagation(event);" ID="chk_Category" runat="server" Text="test" AutoPostBack="true" OnCheckedChanged="CheckBox1_CheckedChanged" />       
    </ItemTemplate>    
</telerik:RadComboBox>

<dnn:label ID="lbl" runat="server" Text="nothing" />

</ContentTemplate>
<Triggers>
    <asp:AsyncPostBackTrigger ControlID="rcb"/>    
</Triggers>
</asp:UpdatePanel>

<script type="text/javascript" language="javascript">
        // <![CDATA[
    function stopPropagation(e) {        
        e.cancelBubble = true;
        if (e.stopPropagation) {
            e.stopPropagation();
        }
    }
    function OnClientSelectedIndexChanging(item) {       
        return false;
    }

                // ]]>
</script>

// 

通常,当您单击项目时,下拉列表关闭;我们在组合框模板中使用一个复选框,并且只有在单击项目本身时才经历关闭(这会选择项目,这会让人困惑)


这里的问题是,每个复选框都会发回服务器,这是最可能的原因。单击复选框后是否必须将其响应发送回服务器?另一种方法是批量读取每个项目的复选框控件,或者每次选中某个项目时,将选中项目的值存储在隐藏的co中控制

或者,作为供参考,对于2011年第二季度的发行版,即将推出的是此功能:复选框模式下的多重选择。因此复选框将是组合框的默认功能。如果您有支持,您可以很快升级


HTH.

通常,当您单击项目时,下拉列表关闭;我们在组合框模板中使用复选框,并且只有在单击项目本身时才经历关闭(这会选择项目,这会让人困惑)


这里的问题是,每个复选框都会发回服务器,这是最可能的原因。单击复选框后是否必须将其响应发送回服务器?另一种方法是批量读取每个项目的复选框控件,或者每次选中某个项目时,将选中项目的值存储在隐藏的co中控制

或者,作为供参考,对于2011年第二季度的发行版,即将推出的是此功能:复选框模式下的多重选择。因此复选框将是组合框的默认功能。如果您有支持,您可以很快升级


HTH.

“单击复选框响应后,是否必须将其发送回服务器?”,是的。因为每个复选框都是ind数据库中某个值的ID。嘿,好吧,尽管你可能总是会遇到这个问题。因为发生的事情是,响应返回并擦除原始响应,而新响应关闭了下拉列表。你需要做的是通过编程打开下拉列表。不知道是否可以在服务器端。或者,捕获ID并构建存储在隐藏字段中的列表(所有操作都由客户端JavaScript完成)在这种情况下不也有效吗?最后,我选择使用复选框列表。当新的telerik版本出现时,可能会切换它。无论如何,谢谢.NP,我还使用了RadC中的telerik RadListBoxomboBox,效果很好……”单击复选框后是否必须将其响应发送回服务器,是的。因为每个复选框都是ind数据库中某个值的ID。嘿,好吧,尽管你可能总是会遇到这个问题。因为发生的事情是,响应返回并擦除原始响应,而新响应关闭了下拉列表。你需要做的是通过编程打开下拉列表。不知道是否可以在服务器端。或者,捕获ID并构建存储在隐藏字段中的列表(所有操作都由客户端JavaScript完成)在这种情况下不也有效吗?最后,我选择使用复选框列表。当新的telerik版本出现时,可能会切换它。无论如何,谢谢.NP,我还使用了RadC中的telerik RadListBoxomboBox,效果很好。。。