delphi中使用webbrowser提交表单
转自:http://blog.163.com/hehaifeng1984@126/blog/static/6900113620133504644998/
我们以百度搜索为例,使用webbrowser组件自动在表单中填写信息,并提交出去。
首先从百度首页源代码中寻找表单信息,最关键的信息如下:
<formname="f"action="">
<input type="text"name="wd"id="kw"maxlength="100"class="s_ipt">
<inputtype="submit"value="百度一下"id="su" ></form>
可以看到,百度的搜索表单的Name参数值是“f”,只有一个字母。而文本输入框的名字叫wd。我们只要设置wd的值就可以自动填写表单了。
在窗体中拖一个WebBrowser组件和两个按钮组件,按钮1填写表单,按钮2提交数据,在窗口载入时打开百度首页:
procedure TForm1.FormCreate(Sender: TObject);
begin
webbrowser1.Navigate('http://www.baidu.com');
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var o:OleVariant;
begin
o := WebBrowser1.OleObject.document.all.item( 'wd',0); //找到输入框
o.value := '凌云阁';
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
var o:OleVariant;
begin
o:=WebBrowser1.oleobject.document.all.item('f',0); //提交数据
o.submit;
end;
上面的代码中,我们事先已经知道了表单和输入框的名字,使用WebBrowser1.OleObject.document.all.item( 'wd',0)找到输入框对象,用value方法输入数据。
由于百度的提交数据按钮没有name属性,只能利用表单的name属性,采用提交表单的方式提交。我们使用WebBrowser1.oleobject.document.all.item('f',0)找到表单对象。然后用sumit方法提交。
delphi中使用webbrowser提交表单的更多相关文章
- SpringMVC中的异步提交表单
1.前言 近期在做一个项目,前台框架用的是EasyUI+SpringMVC,因为对SpringMVC不太了解,所以刚開始接触的时候有点吃力,在此通过一个EasyUi中的DataGrid表格来总结一下. ...
- PHP自学3——在html的<table>标签中显示用户提交表单
为了更好地显示用户提交表单,本节将在上一节的基础上将读取的用户表单显示在html的<table>标签中,这一节将用到和数组有关的知识. 本节代码将从外部文件(.txt文件)中读取信息于指定 ...
- tp5中ajax方式提交表单
用ajax提交表单,迅速,快捷,实现页面无刷新提交表单. <!DOCTYPE html> <html lang="en"> <head> < ...
- javaWeb中怎么获取提交表单里面的值
在javaWeb中如何获得html文件中的表单里面的值? <!DOCTYPE html> <html> <head> <meta charset=" ...
- jquery中$.ajax方法提交表单
function postdata(){ //提交数据函数 $.ajax({ //调用jqu ...
- html中button自动提交表单?
在ie中,button默认的type是button,而其他浏览器和W3C标准中button默认的属性都是submit
- Validator验证Ajax提交表单的方法
Validator验证Ajax提交表单的方法 转自:http://hunanpengdake.iteye.com/blog/1671360 当我们在一些稍微复杂的业务时,可能会遇到需要多个表单form ...
- form表单action提交表单,页面不跳转且表单数据含文件的处理方法
在最近的项目中需要将含 input[type='file']的表单提交给后台 ,并且后台需要将文件存储在数据库中.之前所用的方法都是先将文件上传到七牛服务器上,然后七牛会返回文件的下载地址,在提交表单 ...
- HTML 中按钮作为form表单元素提交特性两则 --- 参HTML考标准分析
相同name的submit 类型的input提交行为 描述 这种情况, <input type="submit" name="ACTION" value= ...
随机推荐
- [HNOI2006]超级英雄Hero
这题一看就应该知道是二分图匹配…… 我记得有个类似的题有一个并查集的解法,但是我找不到了…… var i,n,m:longint; p:..] of longint; v:..] of boolean ...
- Android 自动换行流式布局的RadioGroup
效果图 用法 使用FlowRadioGroup代替RadioGroup 代码 import android.content.Context; import android.util.Attribute ...
- 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...
- 实体框架Entity Framework 4.1快速入门
介 绍 在旧的Entity 框架中,开发者可以从已存在的数据库中产生业务实体的模型,这种开发方法被称为数据库驱动的开发方法.而在4.1的Entity Framework中,支开发者先创建实体业务类,然 ...
- spring+mybatis 多数据源整合
<!-- 数据源配置 --> <bean id="ds1" class="org.apache.commons.dbcp.BasicDataSour ...
- ccr1
Concurrency and Coordination Runtime Jeffrey Richter Code download available at:ConcurrentAffairs200 ...
- HDU 3271-SNIBB(数位dp)
题意:给一个数q, q=1时求给定区间,给定进制,各数位和等于m的数字的个数 q=2时求给定区间,给定进制,各数位和等于m的数字中的第k大的数字 分析:dp[i][sum][j],表示长度为i当前数位 ...
- [OFBiz]开发 一
1.使用Eclipse3.7.1 + subclipse plugins 1.8.2(svn client)http://subclipse.tigris.org/servlets/ProjectDo ...
- wuzhicms页面报错 Notice 错误,如何关闭错误显示!
错误类型类似: PHP Notice: Use of undefined constant E_DEPRECATED - assumed 'E_DEPRECATED' in D:\freehost\3 ...
- javascript——继承
内容: 1.继承的概念.继承分为那几种继承及各种继承的区别 2.js中有那几种继承方式及各种继承的优缺点 3.总结