C# 在JavaScript中注册客户端事件
我有一个C# 在JavaScript中注册客户端事件,c#,javascript,asp.net,telerik,C#,Javascript,Asp.net,Telerik,我有一个RadComboBox,它在代码隐藏中填充,还有一个注册RadComboBox.onClientSelectedIndexChanged事件的按钮 <telerik:RadComboBox ID="rcbUsers" runat="server"></telerik:RadComboBox> <telerik:RadButton ID="btnReg" runat="server" AutoPostBack="Fal
RadComboBox
,它在代码隐藏中填充,还有一个注册RadComboBox.onClientSelectedIndexChanged
事件的按钮
<telerik:RadComboBox
ID="rcbUsers"
runat="server"></telerik:RadComboBox>
<telerik:RadButton
ID="btnReg"
runat="server"
AutoPostBack="False"
OnClientClicked="btnReg_OnClientClicked"
Text="Register Event"></telerik:RadButton>
在JavaScript中,我有以下代码:
function btnReg_OnClientClicked(sender, args) {
var rcbUsers = $.find('<%= rcbUsers.ClientID %>');
rcbUsers.selectedIndexChanged = rcbUsers_SelectedIndexChanged;
}
function rcbUsers_SelectedIndexChanged(sender, args) {
console.log('selected index changed');
}
函数btnReg\u OnClientClicked(发送方,参数){
var rcbUsers=$.find(“”);
rcbUsers.selectedIndexChanged=rcbUsers\u selectedIndexChanged;
}
功能rcbUsers\u SelectedIndexChanged(发送方,参数){
log('所选索引已更改');
}
但是当我在
RadComboBox
中更改项目时,将不会触发rcbUsers\u SelectedIndexChanged
。这是正确的语法吗?您需要像这样添加处理程序
(使用add\u selectedIndexChanged
api):
$find(“”)。添加\u selectedIndexChanged(函数(发送方,e){
//做点什么
})
$find('<%= rcbUsers.ClientID %>').add_selectedIndexChanged(function(sender, e){
// do something
})