我在“ tree.aspx.cs ”页面后面的代码中动态创建内容和按钮
sbmainTbl.AppendFormat("<tr><td><div class=\"a\">{0}<div class=\"details\"<p id=\"p\">{1}</p><ul><li>Parent-UnitId:{2}</li><li>Address :{3}</li><li>City: {4}</li><li>EmailId: {5}</li><li>PhoneNo: {6}</li><li>FaxNo: {7}</li><li><input type=\"button\" value=\"ADD\" onclick=\"f2();\" /></li></ul></div></div></div></td></tr>",
CellText(dtparent.Rows[0]["UnitName"].ToString()),
CellText(dtparent.Rows[0]["UnitName"].ToString()),
CellText(dtparent.Rows[0]["ParentUnitId"].ToString()),
CellText(dtparent.Rows[0]["Address"].ToString()),
CellText(dtparent.Rows[0]["City"].ToString()),
CellText(dtparent.Rows[0]["EmailId"].ToString()),
CellText(dtparent.Rows[0]["PhoneNo"].ToString()),
CellText(dtparent.Rows[0]["FaxNo"].ToString()));
现在我有另一个名为“ Add.aspx Page ”的页面 在那个页面我有文本框
<asp:TextBox ID="txtunitname" runat="server" CssClass="textbox"></asp:TextBox>
现在我只想在“ tree.aspx ”页面上点击动态创建按钮,“unitname(动态创建值)”将传递“ add.aspx ”页面和文本框应填充单位名称。
请帮助我, 感谢。
答案 0 :(得分:0)
要使用asp.net更正传递传递值,您需要遵循asp.net方式。
首先在第一页上将该值放在页面控件上,我更喜欢你的情况下隐藏字段,也可以回发到任何页面。
然后将您的值添加到该字段
ValueHiddenField.value = CellText(dtparent.Rows[0]["UnitName"].ToString())
并且您还创建了一个公共字段,因此第二页可以读取它
public string ValueHiddenField
{
get
{
return ValueHiddenField.value;
}
}
您说按钮会使用按钮的PostBackUrl
字段发回第二页。
现在,这是您从第二页获取数据的方式:
在重定向页面上声明aspx上的上一页是什么:
<%@ Reference Page ="~/PreviousPageName.aspx" %>
并在第二页上的代码后面得到值:
if (Page.PreviousPage != null)
{
if (Page.PreviousPage is PreviousPageClassName)
{
Label1.Text = ((PreviousPageClassName)Page.PreviousPage).ValueHiddenField;
}
else
{
Label1.Text = "no value";
}
}
else
Label1.Text = "no value from previous page";
类似的答案:
cross page posting
Cross-page posting. Is it a good pratice to use PreviousPage in Asp.net?