这是上下文:
我正在构建一个 .aspx 页面,该页面允许用户管理我们在服务器上拥有的一些 xml 文档。页面内容是使用 AJAX 加载的,因此按钮和表单会动态添加到文档中。
如果我有在.aspx 页面加载到客户端计算机之前在它中创建的静态按钮,我可以很容易地将一个事件附加到它。但是,我使用 jQuery 动态地添加和删除按钮和表单。
这是一个简化的示例:
在下面的 jsFiddle 中,我假设 html 文档包含以下脚本:
<script language="C#" type="text/C#" runat="server">
void SaveAllChanges(Object sender, EventArgs e)
{
Button clickedButton = (Button)sender;
clickedButton.Text = "foobar";
}
</script>
而且我有一个包含以下内容的javascript文件:
$('button.buttonGenerator').click(function() {
$('.buttonContainer').append(
'<button onclick="SaveAllChanges">' +
'Save All Changes!' +
'</button>'
);
});
显然,我正在创建的按钮无法以现在的方式运行 SaveAllChanges 函数。我添加了 onclick 属性,以伪代码风格显示我需要发生的事情。
如何使动态添加的按钮可以运行我在文档顶部的脚本标记中定义的 C# 方法?
这是jsfiddle:http: //jsfiddle.net/2XwRJ/
谢谢。