我有一个包含以下代码的aspx页面:
<asp:Table ID="JsonContent" runat="server">
</asp:Table>
在我Page_Load
后面的代码中,我将项目添加到表格。
表格包含两行:
行号0是包含TextBox
第num行是包含TextBox
此外我还有一个按钮save
,当用户点击按钮时我需要遍历所有表格行并将数据写在Text Prop
到文件。
问题在于,当我单击Button Save
事件page_load raise并且所有text box
控件都不存在时,我无法将编辑后的数据写入文件。
我读过有关此问题的类似帖子,但无法获得解决方案。
感谢!
答案 0 :(得分:0)
首先,您应该了解asp.net页面web周期:https://msdn.microsoft.com/en-us/library/ms178472.aspx
我想说@TimSchmelter在评论中为您提供了完美的解决方案:
“你应该(重新)在每次回发中在Page_Init中创建所有动态添加的控件,因为当html被发送到客户端时会处理所有对象。但是即使你在那里重新创建它们,如果你指定它们也会保留用户输入与“
之前相同的ID这意味着你必须使用page_init函数(类似于page_load但不能自动生成,你必须手动编写)
我也是这样做过的,我认为蒂姆的解决方案会起作用。
只需确保已达到page_init()功能。