0
ASPX看起来像这样访问元素:无法通过Ajax的事件处理程序(使用更新面板)
<asp:Panel ID="MedChangeScroll" CssClass="table-responsive scrollBlock" runat="server">
<asp:Table ID="MedChangeTable" CssClass="table table-striped table-hover table-bordered" runat="server"></asp:Table>
</asp:Panel>
<asp:Button ID="EnableAddMedChangeBtn" runat="server" CssClass="btn btn-success" Text="Add Med Change" OnClick="enableAddMedChange" />
<asp:Button ID="CancelAddMedChangeBtn" runat="server" Style="display: none;" CssClass="btn" Text="Cancel" OnClick="cancelAddMedChange" />
一切都装在一个更新面板。在EnableAddMedChangeBtn的点击我运行以下命令:
public void enableAddMedChange(object sender, EventArgs e)
{
TableRow tableRow = new TableRow();
MedChangeTable.Rows.Add(tableRow);
tableRow.TableSection = TableRowSection.TableBody;
CancelAddMedChangeBtn.Style.Add("display", "inline-block");
EnableAddMedChangeBtn.Style.Add("display", "none");
}
}
换句话说,当enableAddMedChangeBtn点击我行添加到该表并显示取消按钮。
现在,单击取消按钮时,我无法访问在取消按钮的事件处理程序中第一次单击时添加的行。换句话说,如果表格有2行,并且我添加了第3行,则表格在取消按钮的事件处理程序中显示为具有两行。事实上,如果我将整个取消按钮事件处理程序注释掉(但仍然让空方法执行),则会删除附加行。
所有的帮助表示赞赏,在此先感谢。
是否在页面和表格上启用了ViewState? – Igor 2015-02-09 17:20:30
@Igor如何检查? – pQuestions123 2015-02-09 17:21:18
浏览器中的页面源有__VIEWSTATE隐藏输入吗? – Igor 2015-02-09 17:23:51