我有一个**Rad Combo Box**,其中有两个分隔符.如何仅从分隔符中删除复选框

I have a **Rad Combo Box** in which i have two separator's .How can I remove checkbox only from separator's?

本文关键字:分隔符 两个 何仅 复选框 删除 Combo Rad 有一个 Box      更新时间:2023-09-26
<telerik:RadComboBox ID="RadComboBoxSites" runat="server"
     CheckBoxes="true" EnableCheckAllItemsCheckBox="true" 
     DataTextField="SiteName" DataValueField="SiteUid" 
     AppendDataBoundItems="true" OnItemDataBound= "RadComboBoxSites_ItemDataBound" 
     EmptyMessage="Please Select a site..." MaxHeight="192px"></telerik:RadComboBox>

我有一个RadComboBox,其中有两个分隔符。 如何仅从分隔符中删除复选框?

您可以通过

向页面添加以下 JavaScript 来删除separator项中的复选框。您必须在网页中包含jquery才能正常工作。

从分隔符项中删除复选框

<script type="text/javascript">
      function pageLoad() {
             $(".rcbItem.rcbSeparator :checkbox").remove();
      }
</script>

另外,我建议您适当地设置分隔符项目的样式,使它们看起来与常规项目不同。 您可以使用如下所示的内容。

设置分隔符项的样式

   <head>
    <style>
    .rcbSeparator
     {
         color: red !important;
         margin-left:10px !important;
     }
    </style>
   </head>

更新 1

如果要避免检查分隔符项,请将用于OnClientItemChecking的客户端事件处理程序附加到radomboBox,如下面的标记所示。将事件处理程序脚本也添加到您的页面。

用于订阅 OnClientItemCheck 事件的标记

 <telerik:RadComboBox ID="RadComboBox2" runat="server" Width="300px" Skin="Metro" 
    MaxHeight="400px" CheckBoxes="true" OnClientItemChecking="OnClientItemChecking" 
    EnableCheckAllItemsCheckBox="true" ></telerik:RadComboBox>

JavaScript,可防止单击分隔符项时检查计数增加

<script type="text/javascript">
          function OnClientItemChecking(sender, args) {
                if (args.get_item().get_isSeparator() === true) {
                    args.set_cancel(true);
                }
            }
</script>
看起来没有

直接设置,但有一些解决方法:

  • http://www.telerik.com/forums/how-to-disable-and-hide-a-single-checkbox
  • http://www.telerik.com/forums/remove-checkbox-from-first-item-in-combobox