如何将动态创建的值传递到另一个页面..?

时间:2014-01-10 12:22:30

标签: html asp.net c#-4.0

我在“ 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 ”页面和文本框应填充单位名称。

请帮助我, 感谢。

1 个答案:

答案 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?