asp.net button_click函数为devexpress ASPxHiddenField返回奇怪的值

时间:2016-10-21 06:26:53

标签: javascript c# asp.net devexpress

我的页面中有一个隐藏字段:

 <dx:ASPxHiddenField ID="screenWidth" runat="server" ClientIDMode="Static"  
 ClientInstanceName="screenWidth"></dx:ASPxHiddenField>

我使用JQuery设置其值:

$(document).ready(function(){
    $("#screenWidth").val($(window).width());
    var value = document.getElementById('screenWidth').value;
    alert(value);  
});

(最后两行用于调试,警报显示正确的值)。

在同一页面上,我有一个用于调整其中一个控件的按钮,根据窗口大小,我正在尝试获取屏幕大小:

string screenWidth = Request.Form["screenHeight"].ToString();

但是,当我点击按钮时,我得到了screeenWidth变量:

{&quot;data&quot;:&quot;12|#|#&quot;}

Request.Form [&#34; screenHeight&#34;]返回与上面相同的字符串。

我做错了什么?...

1 个答案:

答案 0 :(得分:0)

似乎Devexpress框架有一个可疑的方式(好吧,对我而言,这是可疑的)来处理他们的隐藏领域: 我必须将窗口值设置为隐藏字段的新属性:

$(document).ready(function(){
    screenWidth.Set('scW', $(window).width());
    alert(screenWidth.Get('scW'));
});

然后,在C#button_clik函数中,我得到了这样的值:

string screenWidth1 = screenWidth["scW"].ToString();

此链接有助于: How to get a value by a key from ASPxHiddenField

引用文章:

  

“ASPxHiddenField组件表示可以的字典   保持无限数量的元素。“

正如天王星所说,这在他们的文件中说明: ASPxHiddenField Class