2015-02-03 2 views
0

Моя веб-форма состоит из двух списков: lstbx01 и lstbx02. lstbx01 привязывается к базе данных sqlDataSource01 и заполняется при загрузке страницы. lstbx02 устанавливается для заполнения, когда выбранное значение lstbx01 передается как параметр для sqlDataSource02. Все работает нормально, если для свойства lstbx01 установлено свойство TrueType для AutoPostBack.Как заполнить ListBox без PostBack в ASP.NET?

Я не хочу, чтобы страница была обновлена. Я хочу, чтобы lstbx02 заполнялся без страницы PostBack.

Я попытался ниже указанный код:

Protected Sub lstbx02_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstbx02.SelectedIndexChanged 
    lstbx02.DataSource = sqlDataSource02 
    lstbx02.DataBind() 
End Sub 

Это не поможет.

ответ

0

Я не думаю, что то, что вы просите, было бы возможно в WebForms. Код, который вы предоставили, потребует обратной передачи для передачи события на сервер, чтобы он мог обрабатываться.

Есть ли конкретная причина, по которой вы не можете сделать обратную передачу? Возможным обходным путем было бы использование AngularJS, Knockout или какой-либо другой структуры JS для заполнения входов на странице. Затем вам понадобится обработчик событий, который либо использовал AJAX для извлечения соответствующих данных или отображаемых данных, которые были кэшированы на странице как JSON.

+0

Спасибо @Scott Simontis за быстрый ответ. Я не хочу использовать PostBack, потому что конечный пользователь этого не хочет. Я новичок в ASP.NET. Было бы очень полезно, если бы вы могли пройти через методы, которые вы предложили. Еще раз спасибо. – TheDProgrammer

+0

Используйте AJAX, чтобы запросить извлечение данных и обновление элементов на странице. Вам не нужно беспокоиться о postbacks, ASP.Net имеет некоторые элементы управления веб-формами AJAX из коробки, но ванильный запрос AJAX также будет работать. – Lankymart

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