使用javascript用值填充asp隐藏字段
我想从服务器端访问用户屏幕分辨率。 为此,我有使用javascript用值填充asp隐藏字段,javascript,asp.net,hidden-field,Javascript,Asp.net,Hidden Field,我想从服务器端访问用户屏幕分辨率。 为此,我有asp隐藏控件: <asp:HiddenField runat="server" ID="hdnScreenResolution" /> 在服务器端,我检查页面上的隐藏值\u Load(): 但该值似乎是空字符串。 使用jquery没有帮助 直接插入: document.getElementById(“”).value=“asdasd”; 没有帮助 问题可能是什么 另外,我想我在文档上捕捉到了屏幕分辨率。准备就绪为时已晚。 页面卸载后,
asp隐藏控件:
<asp:HiddenField runat="server" ID="hdnScreenResolution" />
在服务器端,我检查页面上的隐藏值\u Load()
:
但该值似乎是空字符串。
使用jquery没有帮助
直接插入:
document.getElementById(“”).value=“asdasd”;
没有帮助
问题可能是什么
另外,我想我在文档上捕捉到了屏幕分辨率。准备就绪
为时已晚。
页面卸载后,javascript激发。因此,在初始请求时不需要进行任何更改来捕获它
期待答案。在html发送到客户端并执行jQuery文档之前,会调用服务器端的页面加载
。就绪
因此,在使用javascript在客户端赋值之前,您正在访问值,并且应该为空
您需要将值从客户端发送到服务器,您可以使用jQueryAjax进行回发,以获取服务器上的屏幕坐标值
要查看发生了什么,只需添加asp:button并访问其服务器端事件中的隐藏字段值
<input type="hidden" name="ctl00$MainContent$hdnScreenResolution" id="MainContent_hdnScreenResolution" />
$(document).ready(function () {
var width = screen.width;
var height = screen.height;
var hiddenScreenResolution = document.getElementById('<%= hdnScreenResolution.ClientID
%>');
hiddenScreenResolution.value = "asass";
});
$(document).ready(function () {
var width = screen.width;
var height = screen.height;
var hiddenScreenResolution = document.getElementById('MainContent_hdnScreenResolution');
hiddenScreenResolution.value = "asass";
});
protected void Page_Load(object sender, EventArgs e)
{
var hiddenValue = hdnScreenResolution.Value;
}