我的代码中定义了以下Telerik RadComboBox:
<telerik:RadComboBox ID="rcbCustomer" runat="server" CssClass="form-control field-standard-size fix-background- white input-sm" width ="300px" Height="140px"
EmptyMessage="Type here to find sold-to customer" LoadingMessage="Please wait, loading..." AutoPostBack="true"
RegisterWithScriptManager="false" EnableEmbeddedScripts="true" EnableVirtualScrolling="true">
</telerik:RadComboBox>
我想抓住onchange并用JQuery做点什么。作为测试,我有以下JQuery代码:
<script>
$telerik.$("#<%=rcbcustomer.ClientID %>").onchange(function(e){
e.preventDefault();
alert("changed");
});
</script>
根本不执行JQuery代码。有没有人知道如何使这项工作?
答案 0 :(得分:1)
我不相信你能将这样的事件监听器附加到Telerik控件上。我想你需要使用OnClientSelectedIndexChanging或OnClientSelectedIndexChanged(http://www.telerik.com/help/aspnet-ajax/combobox-client-side-events.html)
所以到了一天结束时你会有类似的东西:
在控件定义中,您将添加OnClientSelectedIndexChanging =“rcbCustomer_IndexChanging”
<script>
function rcbCustomer_IndexChanging(e, args){
e.preventDefault();
alert("changed");
}
</script>
PS:请记住,一个telerik控件可以渲染为具有相当多不同ID的众多DOM元素,其中id =“rcbCustomer”的控件只是一个div,锚点或者根本不可见,并且用户实际上会交互用其他东西。