2015-04-24 4 views
0

У меня есть Gridview, с которым я привязываю данные. У меня есть флажки в каждой строке Gridview, которые я использую для удаления записей через Javascript. Удаление работает хорошо. Проблема в том, что когда я делаю обратную передачу на странице, все удаленные записи снова появляются. Я предполагаю, что это некоторые проблемы с представлением.Gridview потеряет изменения, сделанные с помощью Javascript при обратной передаче

Как я могу удалить удаленные строки в Javascript, чтобы оставаться удаленным при обратной передаче?

+1

Хороший старт будет опубликовать код –

+1

GridView не является управлением на стороне клиента, и JavaScript не может изменить хранилище данных, которое вы используете, чтобы заполнить ваш GridView. Лучшее, что вы можете сделать, это отметить строки для удаления, даже спрячьте их, если хотите. Но фактическое удаление должно выполняться на стороне сервера во время обратной передачи. Есть много способов сделать это, но, не зная больше о вашем коде, любой ответ будет предположением. – fnostro

+0

вам нужно снова привязать сетку к обратной передаче со свежим источником данных, который не содержит удаленных элементов! – Legends

ответ

0

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

Как я это сделал, когда я удалил строки на клиенте, я сохранил индексы, которые я удалил в скрытом поле. Затем, как только страница будет отправлена ​​назад, я захвачу значения из этого скрытого поля, прохожу через источник данных сетки и удаляю строки. После этого я просто DataBind() снова сетка.

0

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

+0

Спасибо, это поставило меня на правильный путь, чтобы заставить его работать. Я бы поднял голову, но у меня еще нет репутации. – Michael