【问题标题】:telerik radcombobox "OnClientTextChange" event doesn't fireTelerik radcombobox“OnClientTextChange”事件不会触发
【发布时间】:2012-07-08 05:20:38
【问题描述】:

我根据 Telerik 示例编写了以下代码:

<telerik:RadComboBox ID="rcbPageSize"   
runat="Server"   
skin="Gray"  
AllowCustomText="true"  
Style="float:right; margin-left: 5px;"   
Width="60px" 
OnClientTextChange = "PageSizeChanged"
OnClientSelectedIndexChange =  "PageSizeChanged">

<Items>
    <telerik:RadComboBoxItem runat="Server" Text="10" Value="10" />
    <telerik:RadComboBoxItem runat="Server" Text="20" Value="20" Selected="true" />
    <telerik:RadComboBoxItem runat="Server" Text="50" Value="50" />
    <telerik:RadComboBoxItem runat="Server" Text="150" Value="150" />
    <telerik:RadComboBoxItem runat="Server" Text="250" Value="250" />
</Items>

</telerik:RadComboBox>


<telerik:RadCodeBlock ID="rcb" runat="server">

 <script type="text/javascript">

    function PageSizeChanged(sender, eventArgs) {

        alert("You typed " + sender.get_text());

    }

</script>
</telerik:RadCodeBlock>

当我更改选择时,会调用函数“PageSizeChanged”,但是当我通过在组合框中键入来更改文本时,该函数永远不会被调用。

有人有什么建议吗? 谢谢, 英巴尔。

【问题讨论】:

    标签: telerik radcombobox


    【解决方案1】:

    OnClientTextChange 在用户按 Enter 或在 RadComboBox 外部单击之前不会触发。这里是这样说的:http://www.telerik.com/help/aspnet-ajax/combobox-onclienttextchange.html

    【讨论】:

    • 谢谢安,我知道……但即使我点击进入或框外,它也不起作用。
    • 这个控件肯定是被冲出门了。
    【解决方案2】:

    我发现这绝对是 Telerik 控件的“功能”。如果您使用您的代码,输入一些内容,按回车键,然后在框外单击事件将触发。

    只是按下回车键或只是点击外部不要自行触发它。

    我正在使用稍新版本的 Telerik 控件,因为灰色皮肤已被弃用,但我假设它在您的版本中将是相同的。

    【讨论】:

      【解决方案3】:

      您必须设置 AutoPostBack="true",才能触发服务器事件。

      <telerik:RadComboBox ID="rcbPageSize"  
      AutoPostBack="true" 
      runat="Server"   
      skin="Gray"  
      AllowCustomText="true"  
      Style="float:right; margin-left: 5px;"   
      Width="60px" 
      OnClientTextChange = "PageSizeChanged"
      OnClientSelectedIndexChange =  "PageSizeChanged">
      

      【讨论】:

      • 这不是服务器端事件,而是客户端! "onClientTextChange"
      • 对不起,我的错。您的代码中有错字。事件的名称是 OnClientSelectedIndexChanged 而不是 OnClientSelectedIndexChange,是的,在您按下回车键或单击组合键后将触发 OnClientTextChange。也许您可以使用 OnClientKeyPressing 事件,每次按下键后都会触发它
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-18
      • 2015-06-25
      相关资源
      最近更新 更多