在我的.aspx页面中,我有一个“ input” html标记,还有一个asp按钮。
<input id="Name" type="text" runat="server" clientidmode="Static" />
<asp:Button Width="100" type="submit" ID="sendOrder" runat="server" OnClick="SubmitForm" Text="Submit" />
Run Code Online (Sandbox Code Playgroud)
在页面加载时,我从后面的代码中填充输入标签中的值,如下所示:
Name.Value= "X";
Run Code Online (Sandbox Code Playgroud)
但是现在,如果我从浏览器更改此文本框的值,说“ Y”,然后单击“提交”按钮,那么我得到的是旧值,而不是新值。
protected void SubmitForm(object sender, EventArgs e)
{
var test= Name.Value; // here I get old value
}
Run Code Online (Sandbox Code Playgroud)
我如何获得更改后的价值?
确保仅在不回发时将值设置为“ X”:
if (!Page.IsPostBack){
Name.Value= "X";
}
Run Code Online (Sandbox Code Playgroud)
否则,当单击提交按钮时,Page_Load()事件会将值从“ Y”更改回“ X”。