|   |   | 
| 
 | Поле HTML документа | ☑ | ||
|---|---|---|---|---|
| 0
    
        Oz11 15.09.11✎ 17:25 | 
        Можно ли из поля html документа, которое находится на форме, вытянуть текст и запихать его в поле ввода типа неограниченная строка?     | |||
| 1
    
        Oz11 15.09.11✎ 17:26 | 
        неверно поставил вопрос. как это можно сделать? вот вопрос.     | |||
| 2
    
        Jstunner 15.09.11✎ 17:26 | 
        не возражаю     | |||
| 3
    
        Jstunner 15.09.11✎ 17:27 | 
        (1)
  ПолеHTMLДокумента.ПолучитьТекст (HTMLDocumentField.GetText) ПолеHTMLДокумента (HTMLDocumentField) ПолучитьТекст (GetText) Синтаксис: ПолучитьТекст() Возвращаемое значение: Тип: Строка. Описание: Получает текст HTML-документа. Доступность: Толстый клиент. | |||
| 4
    
        Oz11 15.09.11✎ 17:29 | 
        этот вариант - первое что пришло в голову. метод возвращает строку в виде
  <HTML><HEAD> <META content="text/html; charset=utf-8" http-equiv=Content-Type> <META name=GENERATOR content="MSHTML 8.00.7601.17514"></HEAD> <BODY> <BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr> <BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr> <BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr> <BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr> <BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr> <BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr> <P>Запрос на счет дистрибьютора</P></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE> <P>Уважаемый дистрибьютор, фирма ТОВ "Саміт Моторз Україна" в лице директора Міяке Рюсуке просит Вас выслать счет на оплату следующего автомобиля:</P> <P> <TABLE style="TEXT-ALIGN: left; WIDTH: 100%" border=1 cellSpacing=0 borderColor=#000000 cellPadding=0> <TBODY> <TR> <TD>Номенклатура</TD> <TD>СерияНоменклатуры</TD> <TD>СМУ_ЦветКузова</TD> <TD>СМУ_ЦветСалона</TD></TR> <TR> <TD>Toyota Land Cruiser 150 4 АТ VX</TD> <TD>JTEBU3FJ705015866</TD> <TD>Чорний</TD> <TD>Бежевий</TD></TR></TBODY></TABLE></P></BODY></HTML> а нужно получить только текст. | |||
| 5
    
        Asmody 15.09.11✎ 17:34 | 
        можно еще более интересно сделать — можно само поле в режим редактирования переключить     | |||
| 6
    
        oleg_km 15.09.11✎ 17:38 | 
        (4)
  А что применительно к HTML подразумевается под термином текст? Выкинуть все тэги? А будет ли читабельным в общем слуае такой "текст"? | |||
| 7
    
        Oz11 15.09.11✎ 17:41 | 
        решение вроде нашел: ЭлементыФормы.ПолеHTMLДокумента1.Документ.Body.innerText
  но теперь другой вопрос. поле хтмл содержало таблицу, при вытягивании текста естественно получилась каша, как говорил гражданин (6). как привести все это к нормальному виду? | |||
| 8
    
        Scooter 15.09.11✎ 17:47 | 
        (7)получить таблицу по ид и перенести её в ТвоюТаблицу     | |||
| 9
    
        Oz11 15.09.11✎ 18:08 | 
        с таблицей кое как разобрался, просто пишу все в одну строчку.  тут другая проблемка. при проделывании всей этой операции поле ввода остается пустым. причем если пройтись отладчиком - все подтягивает, а вот в поле не отображается. более того если поставить точку останова и пройтись отладкой через ф10, прийдя таким образом к конечному результату - поле заполнено как нужно. в чем проблема? может нужно еще как-то дополнительно обновлять форму?     | |||
| 10
    
        qwerty09 15.09.11✎ 18:19 | 
        (9) код покажи     | |||
| 11
    
        Oz11 15.09.11✎ 18:22 | 
        Событие = Документы.Событие.СоздатьДокумент();
  ФормаСобытия = Событие.ПолучитьФорму(); ФормаСобытия.Открыть(); Событие.ВидСобытия = Перечисления.ВидыСобытий.ЭлектронноеПисьмо; Событие.ГруппаСобытия = Справочники.ГруппыСобытий.ШаблонТекста; Если СодержаниеСобытия = "Запрос на счет дистрибьютора" Тогда ЗапросНаСчет = Справочники.СМУ_Авто_ПечатныеФормы.НайтиПоНаименованию("Запрос на счет дистрибьютора"); Если НЕ ЗапросНаСчет = Справочники.СМУ_Авто_ПечатныеФормы.ПустаяСсылка() Тогда Форма = ЗапросНаСчет.ПолучитьФорму(); Форма.ДокументПример = ЭлементыФормы.ТаблицаДоговоров.ТекущаяСтрока.Ссылка; Форма.ЭлементыФормы.ПросмотрПримера.УстановитьТекст(СМУ_Авто_ОбщегоНазначения.ПечатьДокументаИзКонструктора(Форма.ДокументПример, ЗапросНаСчет, Истина)); //Событие.СодержаниеСобытия = Форма.ЭлементыФормы.ПросмотрПримера.ПолучитьТекст(); Событие.СодержаниеСобытия = Форма.ЭлементыФормы.ПросмотрПримера.Документ.Body.innerText; КонецЕсли; КонецЕсли; | |||
| 12
    
        Oz11 15.09.11✎ 18:24 | 
        это код создания и заполнения документа. в один из его реквизитов СодержаниеСобытия (неограниченная строка) и пишется текст из хтмл поля.     | |||
| 13
    
        qwerty09 15.09.11✎ 18:35 | 
        (12) если реквизиту СодержаниеСобытия таки присваевается значение, но на форме не видишь, то тут вариантов два - либо нет связи данных с элементом формы, либо где то дальше ты очищаешь это поле     | |||
| 14
    
        Oz11 15.09.11✎ 18:38 | 
        (13) а как объяснить тот факт что после прохождения отладчиком все появляется?     | |||
| 15
    
        Oz11 15.09.11✎ 18:39 | 
        связь есть полюбому, а вот очищение сейчас проверю, хотя вопрос с отладчиком вроде показывает что очищения нет.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |