设置'onClick'在代码隐藏中动态添加控件时调用客户端方法
Set the 'onClick' to call a client method when dynamically adding control in Code Behind
我正在代码隐藏中动态添加一个 RadioButtonList。我想要它,这样 'OnClick' 就不会调用 JavaScript,而是调用我后面的代码中的一个方法。
这可能吗?
另外,有没有办法设置让这个say控件有runat="server"?
您可以使用按钮点击事件
https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.click(v=vs.110).aspx
请务必在代码的 Page_Init()
部分添加控件,而不是在 Page_Load()
或更高版本中。在 Page_Init()
设置中设置事件处理程序 +=
行。如果你这样做,控件应该 运行 服务器端。我不确定 runat="server"
是否会被显式设置,但控件会以这种方式运行。
是的,这是可能的。此外,不需要 runat="server" 因为您是在代码中创建控件。
您需要设置 RadioButtonList 对象的 OnSelectedIndexChanged 事件。正如@Robert 提到的,如果您动态创建控件,则需要将它们包装在 Page_Init().
protected void Page_Init(Object sender, EventArgs e) {
RadioButtonList radiobuttonlist = new RadioButtonList();
radiobuttonlist.SelectedIndexChanged += radiobuttonList_CheckedChanged;
//Set the AutoPostBack to true proptery to that the user action
// will immediately post-back to the server
radiobuttonlist.AutoPostBack = true;
}
private void radiobuttonList_CheckedChanged(object sender, EventArgs e) {
//Code you want to execut when a user selects a different item
}
我正在代码隐藏中动态添加一个 RadioButtonList。我想要它,这样 'OnClick' 就不会调用 JavaScript,而是调用我后面的代码中的一个方法。
这可能吗?
另外,有没有办法设置让这个say控件有runat="server"?
您可以使用按钮点击事件 https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.click(v=vs.110).aspx
请务必在代码的 Page_Init()
部分添加控件,而不是在 Page_Load()
或更高版本中。在 Page_Init()
设置中设置事件处理程序 +=
行。如果你这样做,控件应该 运行 服务器端。我不确定 runat="server"
是否会被显式设置,但控件会以这种方式运行。
是的,这是可能的。此外,不需要 runat="server" 因为您是在代码中创建控件。
您需要设置 RadioButtonList 对象的 OnSelectedIndexChanged 事件。正如@Robert 提到的,如果您动态创建控件,则需要将它们包装在 Page_Init().
protected void Page_Init(Object sender, EventArgs e) {
RadioButtonList radiobuttonlist = new RadioButtonList();
radiobuttonlist.SelectedIndexChanged += radiobuttonList_CheckedChanged;
//Set the AutoPostBack to true proptery to that the user action
// will immediately post-back to the server
radiobuttonlist.AutoPostBack = true;
}
private void radiobuttonList_CheckedChanged(object sender, EventArgs e) {
//Code you want to execut when a user selects a different item
}