|
|
|||||
Регистрация: Oct 2009
Сообщений: 174
|
неправильное обновление TextField
Добры день.
Подскажите как правильно сделать, чтобы при добавлении сообщения в гостевую книгу оно сразу отображалось в TextField, а не после обновления страницы. Сообщения хранятся в xml. Запись в xml производится с помощью php. |
|
|||||
Почитайте про ExternalInterface и передавайте флешке новое сообщение сразу после нажатия кнопки, отвечающей за сохранение этого сообщения в xml.
|
|
|||||
Регистрация: Oct 2009
Сообщений: 174
|
Спасибо. почитал честно говоря не особо понял о чем речь... уровень еще слабоват.
я сейчас делаю так: у меня происходит загрузка xml и далее вывод в TextField, далее при заполнении полей и при нажатии на кнопку "отправить" сообщение передается в пхп а оттуда далее в xml. Мне кажется что далее мне надо снова загрузить уже новй хмл тоесть загрузить его повторно опятьже после нажатия этой само кнопки "отправить". В принципе я так и делаю но почему не работает. вот код: private function button6Clicked(event:Event):void { loader.load(request); loader.addEventListener(Event.COMPLETE, loadComplete); } private function submitClicked(event:Event):void { var thismonth:uint = dateToday.getMonth(); var dateStr:String = (dateToday.getDate()+"."+ dateToday.getMonth()+"."+dateToday.getFullYear()); phpLoader.dataFormat = URLLoaderDataFormat.TEXT; phpVars.name = nameText.text; phpVars.title = titleText.text; phpVars.date = dateStr; phpVars.full = fullText.text; phpFileRequest.data = phpVars; phpLoader.load(phpFileRequest); loader.load(request); loader.addEventListener(Event.COMPLETE, loadComplete); } private function loadComplete(event:Event):void { myXML = XML(loader.data); xmlList = myXML.children(); var t:int = 0; while(xmlList.name[t] != undefined){ t = t + 1; } for (var i:int = 0; i < t; i++) { messageViewer.htmlText += ("<b><u>Имя:</u></b> " + xmlList.name[i].toString()); messageViewer.htmlText += ("<b><u>Заголовок:</u></b> " + xmlList.title[i].toString()); messageViewer.htmlText += ("<b><u>Дата:</u></b> " + xmlList.date[i].toString()); messageViewer.htmlText += ("<b><u>Сообщение:</u></b> " + xmlList.full[i].toString()); messageViewer.htmlText += ("......................................................................................................................................."); } } |
|
|||||
А разве нельзя сделать так:
// (подозреваю, что данная функция прослушивает событие класса MouseEvent) private function submitClicked(event:Event):void { var thismonth:uint = dateToday.getMonth(); // данная переменная используется? var dateStr:String = (dateToday.getDate()+"."+ dateToday.getMonth()+"."+dateToday.getFullYear()); // перед отправкой данных PHP добавлять их в текстовое поле messageViewer.htmlText += ("<b><u>Имя:</u></b> " + nameText.text); messageViewer.htmlText += ("<b><u>Заголовок:</u></b> " + titleText.text); messageViewer.htmlText += ("<b><u>Дата:</u></b> " + dateStr); messageViewer.htmlText += ("<b><u>Сообщение:</u></b> " + fullText.text); messageViewer.htmlText += ("......................................................................................................................................."); phpLoader.dataFormat = URLLoaderDataFormat.TEXT; phpVars.name = nameText.text; phpVars.title = titleText.text; phpVars.date = dateStr; phpVars.full = fullText.text; phpFileRequest.data = phpVars; phpLoader.load(phpFileRequest); loader.load(request); loader.addEventListener(Event.COMPLETE, loadComplete); } |
|
|||||
Регистрация: Oct 2009
Сообщений: 174
|
Спасибо! вобщемто неплохое решение. работает. правда есть один минус: если я после добавления сообщения снова нажимаю кнопку которая показывает раздел с гостевой книгой то сообщение пропадает, если после этого обновить страницу то снова показывается...
|
Часовой пояс GMT +4, время: 23:25. |
|
« Предыдущая тема | Следующая тема » |
Теги |
гостевая книга , обновление |
|
|