Здравствуйте, хочу сделать чтобы по нажатию кнопки заполнялось содержимое textarea. делаю так: Code: procedure TForm1.btn2Click(Sender: TObject); var ovElements: OleVariant; i: Integer; begin ovElements := Wb1.OleObject.Document.forms.item(0).elements; for i := 0 to (ovElements.Length - 1) do if (ovElements.item(i).tagName = 'textarea') then ovElements.item(i).value:='Marsel'; end; но к сожалению ничего не заполняется В чем Моя ошибка? Помогите пожалуйста!
Вообще дело вот в чем: Элементы могут храниться не в том виде в котором написаны. В моём случае <textarea> имел имя TEXTAREA По этому проверка ovElements.item(i).tagName = 'textarea' заваливалась из-за регистра символов. Как вариант преобразовывав ovElements.item(i).tagName в нижний регистр и уже сверяй. А догадаться до этого можно было бы очень просто. Даже не знаю об этом. Достаточно было бы в цикл поместить команду memo1.Lines.Add(ovElements.item(i).tagName); и сразу бы всё стало видно.
Слушай Я сделал вот так, в принципе работает Code: procedure TForm1.btn2Click(Sender: TObject); var doc : IHTMLDocument2; col : IHTMLElementCollection; el : IHTMLElement; i : integer; begin doc := wb1.Document as IHTMLDocument2; col := doc.all.tags('textarea') as IHTMLElementCollection; for i := 0 to col.length-1 do begin el := col.item(i, 0) as IHTMLElement; el.setAttribute('value', 'Marsel', 0); end; end; но почему то к типу file не подходит, делаю вот так: Code: procedure TForm1.btn2Click(Sender: TObject); var doc : IHTMLDocument2; col : IHTMLElementCollection; el : IHTMLElement; i : integer; begin doc := wb1.Document as IHTMLDocument2; col := doc.all.tags('input') as IHTMLElementCollection; for i := 0 to col.length-1 do begin el := col.item(i, 0) as IHTMLElement; if el.getAttribute('type', 0) = 'file' then el.setAttribute('value', 'Marsel', 0); end; end; но совсем не работает? Думаете почему?
а никак. Оно имеет атрибут READ_ONLY потому как это сделано с целью безопасности. Даже черех javascript неполучится. Если можно было бы задавать самому эти данные то можно былобы у пользователя автоматом сливать файлы с компа без его ведома.
как поступить - хз потому что ты не описал что тебе нужно ) Если отправить файл на сервак, то ищи по форуму. исходникик были точно (сам выкладывал)