为什么当我使用javascript分配HiddenField控件的新值时,在这种情况下HiddenField控件的值在使用"<%= this.HiddenField.Value%>时调用它时保持相同的状态(5) ;" ?但是当我用" console.log(document.getElementById('<%= this.HiddenField.ClientID%>')。值)调用它时,"在这种情况下,这将返回chagned状态" active",为什么?我如何能够在代码中获得更改后的值(我想"<%= this.HiddenField.Value%>"返回"活动"(更改后的值))?
<script>
$(function () {
document.getElementById('<%= this.HiddenField.ClientID %>').value = "active";
console.log(document.getElementById('<%= this.HiddenField.ClientID %>').value); // this return te changed value "active"
console.log('<%= this.HiddenField.Value %>') //this again is 5 not "active"
});
</script>
<asp:HiddenField ID="HiddenField" runat="server" Value="5" />
答案 0 :(得分:0)
asp.net是一种服务器端语言。 当您使用“&lt;%=”时,它将与您的html文档中的response.write相同。 您正在通过客户端浏览器中的jQuery在运行时更改该值,这显然发生在您已将值写入Log函数之后。
只需查看生成的脚本,就应该清楚地知道为什么会得到这些结果。