找回密码
 加入
搜索
查看: 3073|回复: 7

给网页表单上file类型的赋值什么简单的办法没有?

[复制链接]
发表于 2009-7-22 13:38:37 | 显示全部楼层 |阅读模式
本帖最后由 yinle 于 2009-7-23 20:26 编辑

我附上帮助文件里的示例 你应该就能明白,如下:
; *******************************************************
; Example 5 - Set the value of an INPUT TYPE=FILE element
;               Same as previous example, but with invisible window
;               (security restrictions prevent using _IEFormElementSetValue)
; *******************************************************
;
#include <IE.au3>

$oIE = _IE_Example("form")

; Hide the browser window to demonstrate sending text to invisible window
_IEAction($oIE, "invisible")

$oForm = _IEFormGetObjByName($oIE, "ExampleForm")
$oInputFile = _IEFormElementGetObjByName($oForm, "fileExample")

; Assign input focus to the field and then send the text string
_IEAction($oInputFile, "focus")
$hIE = _IEPropertyGet($oIE, "hwnd")
ControlSend($hIE, "", "[CLASS:Internet Explorer_Server; INSTANCE:1]", "C:\myfile.txt")

MsgBox(0, "Success", "Value set to C:\myfile.txt")
_IEAction($oIE, "visible")
以上就是帮助文件中给网页上表单的一个FILE类型的element填值做法,
_IEFormElementSetValue函数可以直接给TEXT或者PWD类型的赋值,但不能对FILE类型进行赋值操作。 示例中的做法(采用send、controlsend输入方式)约束性很大,很容易出错,想请问有没有直接点的方法?



就是这类如邮箱里面上传附件的地方

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-7-22 13:58:21 | 显示全部楼层
本帖最后由 yinle 于 2009-7-22 14:41 编辑

貌似 send   ControlSend  发送中文路径会出现乱码  
而且_IEAction($oQuery, "focus") 会造成后面有些表单赋值失败
最不能容忍的是:如果键盘当时有输入的话会破坏FILE表单赋值的正确性
 楼主| 发表于 2009-7-22 20:53:21 | 显示全部楼层

需要帮助啊
Send 或者 ControlSend 还经常把":"发成";"   太不好用了
发表于 2009-7-22 22:59:13 | 显示全部楼层
不知楼主在说什么,是不是网页填表,给个地址吧。。。
发表于 2009-7-22 22:59:27 | 显示全部楼层
把问题改下,不知你在说什么
 楼主| 发表于 2009-7-23 16:48:22 | 显示全部楼层
修改了2次 希望我表达清楚了 顶一下 希望有人回复我
如果只能这样做我也好死心算了
 楼主| 发表于 2009-7-23 23:10:35 | 显示全部楼层
我知道高手一般都是晚上出洞 我再顶一次

用图说话:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2009-7-24 02:46:39 | 显示全部楼层
示例中的做法(采用send、controlsend输入方式)约束性很大,很容易出错

怎么容易出错法?
给个网址大家测试下
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-26 22:58 , Processed in 0.073256 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表