ASP.Net标签值在JQuery中发生了变化,但在回发时没有变化

TTC*_*TCG 4 asp.net jquery label

ASP.Net标签的原始值是"xyz".

我已经更改了ASP.Net Label值,如下所示:

$("#<%= lblNew.ClientID %>").text("123");
Run Code Online (Sandbox Code Playgroud)

它在网页上发生了变化.但是当我点击按钮并获得标签的值时,它会变回前一个值"xyz"而不是"123".

Response.Write(lblNew.Text);
Run Code Online (Sandbox Code Playgroud)

我试图设置标签的html而不是如下所示的文本:但它也不起作用.

$("#<%= lblNew.ClientID %>").html("123");
Run Code Online (Sandbox Code Playgroud)

如何通过Jquery获取更改的值?谢谢.

Ami*_*ngh 7

这是因为标签文本值是从视图状态加载的.您的jquery更改了标签的值,但没有更改视图状态,它在回发时加载了它的值....但是你想要更改标签文本..所以你可以得到它像这样.......

string lblvalue=Request[lblNew.UniqueID] as string;
Run Code Online (Sandbox Code Playgroud)

以下是了解视图状态如何使用标签...参考MSDN的示例

<asp:Label runat="server" ID="lblMessage" 
  Font-Name="Verdana" Text="Hello, World!"></asp:Label>
<br />
<asp:Button runat="server" 
  Text="Change Message" ID="btnSubmit"></asp:Button>
<br />
<asp:Button runat="server" Text="Empty Postback"></asp:Button>
And the code-behind class contains the following event handler for the Button's Click event:
private void btnSubmit_Click(object sender, EventArgs e)
{
  lblMessage.Text = "Goodbye, Everyone!";
}
Run Code Online (Sandbox Code Playgroud)

说明了发生的事件序列,突出显示了对Label的Text属性的更改需要存储在视图状态中的原因. 在此输入图像描述