東西我用下面的代碼,以使該代碼文件的頁面的DIV的變化:變化格在
HtmlGenericControl divTest = Page.FindControl("test") as HtmlGenericControl;
divTeste.InnerText = "tested";
但現在,我要換另一個頁面。例如:後面的default.aspx代碼改變了test.aspx中div的內部文本...
上面的代碼沒有被佔用。我想要永久的改變。什麼代碼應該是?
我該怎麼辦?
東西我用下面的代碼,以使該代碼文件的頁面的DIV的變化:變化格在
HtmlGenericControl divTest = Page.FindControl("test") as HtmlGenericControl;
divTeste.InnerText = "tested";
但現在,我要換另一個頁面。例如:後面的default.aspx代碼改變了test.aspx中div的內部文本...
上面的代碼沒有被佔用。我想要永久的改變。什麼代碼應該是?
我該怎麼辦?
您需要了解ASP.NET的工作原理。 Introduction to ASP.NET
如果您使用的是Default.aspx,然後不會移動到Test.aspx,那麼您可以使用Test.aspx中的Default.aspx中的值,但是不能僅從您所在的頁面更改不同的頁面。 (其實這可以通過將數據寫入數據庫,然後訪問您想更改的頁面上的數據,但對於您的示例,我不相信您正在尋找類似的東西)
最接近您的示例我能想到的是使用查詢字符串。
Default.aspx的標記
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
Default.aspx的代碼後面
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("Test.aspx?DivMSG=Hello");
}
Test.aspx文件標記
<div id="MyTestDiv" runat="server">
</div>
Test.aspx的代碼隱藏
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
MyTestDiv.InnerText = Request.QueryString["DivMSG"];
}
}
更新:
的一種方式,以使其永久是將其寫入到數據庫中。一個簡單的例子,但你需要做的數據庫代碼
Default.aspx的標記
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
Default.aspx的代碼背後
protected void Button1_Click(object sender, EventArgs e)
{
string messageToWriteToTestDiv = TextBox1.Text;
// Code: to write messageToWriteToTestDiv to the database
}
Test.aspx的代碼
背後protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string myMessage = "";
// Code: string myMessage = Get Message from Database to write to div
MyTestDiv.InnerText = myMessage;
}
}
Test.aspx的標記
<div id="MyTestDiv" runat="server">
</div>
我怎樣才能使這種更改永久? –
已更新的答案使其更加永久 – MVCKarl