Как просмотреть состояние в обычном вводе HTML в asp.net - PullRequest
1 голос
/ 22 июня 2011

Как использовать VIEWSTATE в обычные элементы ввода HTML в ASP.net.У меня есть форма с большим количеством элементов ввода, и у меня были нормальные (не элементы ввода asp.net) элементы ввода.Теперь я должен сохранить viewstate для этих элементов.

Спасибо

Ответы [ 4 ]

2 голосов
/ 10 апреля 2012

Попробуйте написать функцию javascript, которая сохраняет входные значения в asp:HiddenField до обратной передачи и восстанавливает значения из нее после обратной передачи.

Пример:

function post(){
   var viewState = ...; // save input values
   $('#<%= Hidden1.ClientID %>').val(viewState);
   __doPostBack("<%=UniqueID%>");
}

$(function(){
    var viewState = $('#<%= Hidden1.ClientID %>').val();
    //restore input values
});
1 голос
/ 22 июня 2011

Существует также свойство "enableviewstate" в обычных HTML-элементах, просто установите для него значение true.

0 голосов
/ 26 февраля 2016

Прошло некоторое время с тех пор, как этот пост был создан, но вот мое решение, которое сработало для меня.

Вместо скрытых полей, просто установите атрибут runat = "server" для вашего элемента управления html в ASP.Net.Например,

<input type="text" runat="server"/>

Это будет делать две вещи:

  • Сделать элемент управления html доступным в коде ASP.NET.
  • Автоматически поддерживать состояние просмотра, если вы явно не указалиустановите для параметра EnableViewState значение false, чтобы обеспечить постоянство между обратными передачами страниц.
0 голосов
/ 22 июня 2011

Нет причин делать это, потому что после обратной отправки элементы ввода снова публикуют значение на странице и снова получают содержимое после обратной отправки

Единственная причина, по которой это нужно сделать, - это попытатьсячтобы получить предыдущие значения, перед публикацией обратно.

...