先贴代码。
<form id="form1" runat="server">
<%= strTestHtml%>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</form>
public String strTestHtml;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
strTestHtml = "<input type=\"text\" name=\"t1\">";
}
}
protected void Button1_Click(object sender, EventArgs e)
{
String strTest = ConvertUtility.ToNonNullString(Request.Form["t1"]);
MsgUtility.RegisterErrorScript(this, strTest);
return;
}
因为strTestHtml里面的input个数不确定,所以不能用textbox来做,我需要的是Button1_Click事件后页面还能显示strTestHtml并且用户输入的值还保留。
我试过用ajax的方法来做,没搞通。
试过UpdatePanel,但是对这个不熟,也不行。
请大家出谋划策,谢谢!
protected void Page_Load(object sender, EventArgs e)
{
if (Request.Form["t1"] != null)
{
strTestHtml = "<input type=\"text\" name=\"t1\" value=\"" + Request.Form["t1"].ToString() + "\">";
}
else
{
strTestHtml = "<input type=\"text\" name=\"t1\">";
}
}
虽然得到了你的效果,不知道你做什么用,不提倡这样来做系统。
ViewState或者cookie
实际上是存值取值的问题,看你怎么方便怎么放啦.
cookie,viewstate,数据库,session,hidden,甚至还有application.