TwebBrowser: IHTMLFormElement.submit

rustle 2003-06-13 11:43:21
IHTMLFormElement.submit不执行onsubmit

怎么搞?
...全文
136 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
amna 2003-09-07
  • 打赏
  • 举报
回复
我也感谢!
rustle 2003-07-01
  • 打赏
  • 举报
回复
多谢
gdljf 2003-06-30
  • 打赏
  • 举报
回复
关注,我也被这个困住了
linzhisong 2003-06-30
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
for i := 0 to (WebBrowser1.OleObject.Document.frames.Length - 1) do
if WebBrowser1.OleObject.Document.frames.item(i).document.queryCommandEnabled('Copy') then
ShowMessage('copy command is enabled for frame no.' + IntToStr(i));
end;


试试这个吧。
rustle 2003-06-30
  • 打赏
  • 举报
回复
up
rustle 2003-06-28
  • 打赏
  • 举报
回复
大致代码如下:

procedure aaaaaaa;
var
Document: IHTMLDocument2;
form: IHTMLFormElement;
v: IHTMLInputElement;
s: IHTMLButtonElement;
frabase: IHTMLFrameBase2;
begin
w.Document.QueryInterface(IID_IHTMLDocument2, Document);
//我现在搞不定怎么访问frame,就用了activeElement
Document.activeElement.QueryInterface(IID_IHTMLFrameBase2, frabase);
//获取frame,获取form
frabase.contentWindow.document.all.item('form1',0).QueryInterface(IID_IHTMLFormElement, form);
//获取v
form.item('v',0).QueryInterface(IID_IHTMLInputElement, v);
//获取send按钮
form.item('s', 0).QueryInterface(IID_IHTMLButtonElement, s);
//assign value
v.value := '...';
form.submit; //这样不会触发页面中的OnSubmit事件,我要怎么提交?
end;
rustle 2003-06-28
  • 打赏
  • 举报
回复
to naughtyboy(一切都是为了明天) ( )

确实可以提交,但是它不会触发页面中的Form OnSubmit事件


to: linzhisong(無聊) ( )

我的表单是在页面的一个frame中,怎么做?
rustle 2003-06-25
  • 打赏
  • 举报
回复
uping...
linzhisong 2003-06-25
  • 打赏
  • 举报
回复
163邮箱登陆
procedure TForm1.Button2Click(Sender: TObject);
var
o : Olevariant;
begin
webbrowser1.Navigate('http://www.163.com');
o := WebBrowser1.OleObject.document.all.item('username',0);
o.value := 'username';
o := WebBrowser1.oleobject.document.all.item('Password',0);
o.value := 'password';
o :=WebBrowser1.oleobject.document.all.item('login',0);
o.Click;
end;
DWGZ 2003-06-25
  • 打赏
  • 举报
回复
楼上的
naughtyboy 2003-06-25
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var
Form:IHTMLFormElement;
HTMLDocument2:IHTMLDocument2;
begin
HTMLDocument2 := WebBrowser1.document as IHTMLDocument2;
if HTMLDocument2.forms.length > 0 then
begin
Form := (HTMLDocument2.forms as IHTMLElementCollection).item(0,0) as IHTMLFormElement ;
(Form.item(0,0) as IHTMLInputTextElement).value := 'naughtyboy';
(Form.item(1,0) as IHTMLInputTextElement).value := 'iamnaughtyboy';
Form.Submit;
end;

end;
换成上面样子看看,我刚刚试了试,能提交。
另外最好能把你的代码贴出来
rustle 2003-06-24
  • 打赏
  • 举报
回复
uping...
rustle 2003-06-23
  • 打赏
  • 举报
回复
up
things 2003-06-17
  • 打赏
  • 举报
回复
up
rustle 2003-06-17
  • 打赏
  • 举报
回复
up
rustle 2003-06-16
  • 打赏
  • 举报
回复
TechnoFantasy 2003-06-15
  • 打赏
  • 举报
回复
onsubmit事件是页面中的吗?
blueshu 2003-06-13
  • 打赏
  • 举报
回复
up
rustle 2003-06-13
  • 打赏
  • 举报
回复
up...

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧