[英]How to keep textbox contents after refresh
我的頁面上有一個帶有搜索功能的表單,當您進行搜索時,它將用該記錄的數據填充表單。
表單內還有另一個按鈕和文本框,用於查找參考。 您單擊按鈕,然后選擇要放入文本框中的記錄。
問題是,當數據從搜索發送到頁面時,所有其他文本框的內容都丟失了,僅保留了引用框。
這就是發送數據的方式:所選記錄的ID已添加到會話中,然后重新加載父窗口。 重新加載頁面時,頁面會在搜索中查找ID,然后填充屏幕。
將EnableViewState=true
添加到要保留的每個文本框中。
您可以使用更新面板將更新限制為頁面的某些部分。 請參閱“ 更新面板文檔” ,從而保留不應再次發布的控件狀態。
默認的asp.net行為會在回發后保留這些值,除非需要部分渲染,否則無需使用updatePanel。
您確定不清除.cs文件中的值嗎? 什么是textBoxes的TextMode?
試圖重現您的方案,但未能成功。
這是代碼-aspx文件代碼
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server" TextMode="Password"></asp:TextBox>
<asp:TextBox ID="txtSearch" runat="server"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="Button" OnClick="btnSearch_Click" />
</div>
</form>
aspx.cs文件代碼
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
TextBox1.Text = "Text box 1 value";
TextBox2.Text = "Text box 2 value";
TextBox3.Text = "password";
}
}
protected void btnSearch_Click(object sender, EventArgs e)
{
string SearchTerm = txtSearch.Text;
string textValue1 = TextBox1.Text, textValue2 = TextBox2.Text, textValue3 = TextBox3.Text;
}
}
您可以使用javascript設置值,而無需刷新父頁面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.