Вопрос

Как использовать раскрывающийся список без autopostback = true.

Значение на сервере не изменяется в соответствии с выбранным на стороне клиента. Как я уже говорил, я не хочу, чтобы при каждом выпадающем меню автостоп возвращал пост обратно.

Это было полезно?

Решение

Каждый раз, когда я теряю значение раскрывающегося списка, это происходит из-за того, что я испортил и заново заполнил раскрывающийся список перед обработкой изменения значения. Для меня это были выпадающие списки, которые мне нужно сделать что-то особенное, например, добавить атрибуты элемента для Javascript и т. Д. Это данные, которые необходимо добавлять при каждой загрузке страницы (то есть данные, которые не сохраняются в раскрывающемся списке, как имена и значения каждого предмета). В этих случаях я выполнял эту работу при загрузке, затем я пытаюсь получить значение позже в жизненном цикле страницы и DOH!

Вот жизненный цикл страницы:

http://msdn.microsoft.com/en-us/library /ms178472.aspx

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

Другие советы

оно будет сохранено в состоянии просмотра, поэтому значение будет правильным, когда вы в конце концов отправите сообщение обратно, и если вы действительно отчаянно хотите получить текущее значение без обратной передачи, javascript будет подходящим способом сделать это.

В худшем случае вы можете получить значение сразу же из объекта запроса:

string selectedID = Request[DropdownControl.UniqueID];

Следует убедиться, что вы заполняете поле выбора только во время начальной загрузки страницы, а не во время обратной передачи

if (!this.Page.IsPostBack) {
  //fill select box here
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top