问题:
当我点击我的链接按钮时,表单被提交,但它没有执行回发功能。它也没有执行点击功能。这两个人根本没有被击中。
解决方法
从链接按钮中删除ID。在这种情况下,执行click函数。
LinkButton l = new LinkButton();
l.CssClass = "clause show-modalbox";
l.Click += clauseButton_Click;
l.Visible = true;
l.ID = "LinkButton_0";
l.Text = "C";
编辑:我将ID更改为静态字符串,以便在回发时保证ID相同。
编辑2:从下面的评论:我的Page_Init和Page_Load不会在回发时执行,但是当我省略按钮的ID时它们会被正确执行。
编辑3:我确信这个问题与我的代码有关,因为它并没有在其他页面上发生。因此,我遗漏了两个重要的细节:请参阅下面的答案以获得解决方案。
答案 0 :(得分:3)
您必须使用与以前相同的ID,否则不会触发事件。
LinkButton l = new LinkButton();
l.CssClass = "clause show-modalbox";
l.Click += clauseButton_Click;
l.Visible = true;
l.ID = "LinkButton_" + consecutiveNumber.ToString();
l.Text = "C";
答案 1 :(得分:0)
我的问题的解决方案是在关联的母版页上存在一个脚本管理器,EnablePartialRendering = true。一旦我将其改为假,如下所示,这一切都有效。
<ajaxToolkit:ToolkitScriptManager ID="ScriptManagerMasterPage" runat="server" EnablePageMethods="true" EnablePartialRendering="false"></ajaxToolkit:ToolkitScriptManager>