Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 28.02.2009, 04:17
rukez вне форума Посмотреть профиль Отправить личное сообщение для rukez Найти все сообщения от rukez
  № 1  
Ответить с цитированием
rukez

Регистрация: Jul 2005
Сообщений: 41
По умолчанию Как удалять строчки из adg? и заодно, как обновлять xml в экплорере без перезагрузки?

Два вопросика, вопрос первый:
есть advanceddatagrid на основе иерархического xml файла вида:
<a>
<a/>
<a/>
</a>
<a/>
есть желание динамически удалять выбранные строки.
как добавлять догадался (adg.selectedItem.appendChild() работает на ура) а вот как их удалять? попытка адресации по xml через selectedIndex не работает по причине того что индексы у xml и adg не совпадают, адресация поиском selectedItem внутри xml теоретически должна работать но какой-то костыльный метод Как получить от adg адрес выбранной строки в виде который можно применять к исходному xml файлу? Ну или хотя-бы как нормально удалять выбранные строчки ?

И второй вопросик который давно навис и сильно мучает
При обновлении xml файла (например добавляем строчку или меняем переменную), открытый в экслоурере флексовый файл не видет изменений до тех пор пока не закроешь окно обозревателя и снова не откроешь страничку - как с этим бороться ?
Просто ситуация довольно простая - xml меняется динамически через сам флекс (аккурат через adg с вопросом выше), поменяли xml загруженный в ролик, всё отлично, сохранили изменения на сервере, всё то-же отлично, нажали F5 (обновили страничку) ... видим старое содержимое xml'ки, и пока не закроешь браузер и не откроешь снова новое содержимое не подхватывается
Обновление с зажатым шифтом (или с контролом, не помню точно какое из них чистит кэш и в результате пробую оба ) не помогает, только перезагрузка самого обозревателя - как побороть ?

Заранее спасибо за ответы

Старый 28.02.2009, 11:53
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 2  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
1) А у самих элементов нет ИД какого-нить?
2) Чистите кэш, либо как вариант добавьте в путь параметр и меняйте его при обновлении. http://somedomain.ru/some.xml?rnd=2233324
http://somedomain.ru/some.xml?rnd=22334
http://somedomain.ru/some.xml?rnd=1324
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 02.03.2009, 01:20
rukez вне форума Посмотреть профиль Отправить личное сообщение для rukez Найти все сообщения от rukez
  № 3  
Ответить с цитированием
rukez

Регистрация: Jul 2005
Сообщений: 41
1) ИД можно ввести но повторюсь что искать удаляемую строку хочется меньше всего - файл довольно большой и хотелось как-то обойтись "курсором" благо в момент нажатия кнопки "удаление" адг уже знает какой элемент выделен т.е. получается что придётся делать второй раз пересчёт всего файла
2) Спасиб, идея!

Добавлено через 13 часов 29 минут
С удалением удалось разобраться путём ввода ид в каждую ноду xml, в итоге удалять можно вот так:
delete xmlProvider.descendants("*").(@id==adg.selectedItem.@id)[0]
не очень правильно но зато работает

Добавлено через 17 часов 18 минут
по удалению нашёлся ещё вот такой способ:
var node:XML = tree.selectedItem as XML;
delete node.parent().elements()[node.childIndex()];
проверено, работает но есть проблемка с индексами (соседняя тема)

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:29.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.