【发布时间】:2014-08-16 16:10:08
【问题描述】:
我需要在不执行页面刷新或按钮单击事件的情况下从我的代码中获取一个 JavaScript 变量。这是我的代码:
aspx:
<asp:HiddenField ID="docLengthValue" runat="server" />
<script type="text/javascript">
var body = document.body,
html = document.documentElement;
var height = Math.max(body.scrollHeight, body.offsetHeight,
html.clientHeight, html.scrollHeight, html.offsetHeight);
//alert(height + ": Page length");
document.getElementById("<%=docLengthValue.ClientID%>").setAttribute("Value", height);
</script>
c#:
//Skrollr body tag background parallax animation
string docLengthVar = docLengthValue.Value;
HtmlGenericControl skrollr = (HtmlGenericControl)this.Page.Master.FindControl("bodyBG");
skrollr.Attributes.Add("data-0", "background-position: 0px -120px;");
skrollr.Attributes.Add("data-" + docLengthVar, "background-position: 0px 0px;");
dataAttb.Text = "This is the Document length: " + docLengthVar;
如何访问<asp:HiddenField ID="docLengthValue" runat="server" /> 的值字段?我知道 JavaScript 在 C# 之后编译,但是有没有办法得到这个变量?
【问题讨论】:
-
为什么要这样做?几乎可以肯定,有一种更好的方法可以完成您想做的事情。您能描述一下您提出问题的动机吗?
-
您可以随时将其发送到带有 AJAX 请求的处理程序。
-
您是否正在尝试获取page length? 无论如何,这是如何使用ajax within webforms, an extensively discussed subject. 的副本。您尝试了哪些方法,哪些方法不起作用?
标签: c# javascript variables skrollr hiddenfield