サーバー側からユーザー画面の解像度にアクセスしたい。このために私はasp hidden
コントロールを持っています:
<asp:HiddenField runat="server" ID="hdnScreenResolution" />
実際にページにレンダリングするもの:
<input type="hidden" name="ctl00$MainContent$hdnScreenResolution" id="MainContent_hdnScreenResolution" />
javascript関数を使用して値を挿入します。
$(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";
});
サーバー側では、次の隠し値を確認しますPage_Load()
。
protected void Page_Load(object sender, EventArgs e)
{
var hiddenValue = hdnScreenResolution.Value;
}
しかし、値は空の文字列のようです。jqueryを使用しても役に立ちません。
直接挿入:document.getElementById('<%= hdnScreenResolution.ClientID%>')。value = "asdasd"; 助けにならない。
何が問題になる可能性がありますか?
PS画面の解像度を把握するにdocument.ready
は遅すぎると思います。そして、ページがアンロードされた後にjavascriptが起動します。したがって、最初の要求でそれをキャッチするための変更はありません。
答えを楽しみにしています。