2016-10-21 3 views
0

У меня есть скрытое поле в моей странице:функция asp.net button_click возвращает странное значение для DevExpress ASPxHiddenField

<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 [ "ScreenHeight"] возвращает ту же строку, как описано выше.

Что я делаю неправильно ...

ответ

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

+0

На самом деле, хранения набора значений различного типа является основной целью данного компонента. Это четко указано в документации. Если вы не возражаете, я предлагаю вам добавить ссылку [documentation link] (https://documentation.devexpress.com/#AspNet/clsDevExpressWebASPxHiddenFieldtopic), чтобы сделать ваш ответ полным и полезным для других. – Uranus

+0

Вы правы, я добавил ссылку в ответ. Я довольно новичок в Devexpress ... – Maus

Смежные вопросы