wslf 发表于 2010-12-16 12:00:44

日期框录制问题

本帖最后由 wslf 于 2010-12-16 12:03 编辑

在论坛里看到各位讨论了好多关于日期框的问题,但我这个样式似乎又有点不同,日期框中默认有两个横杠--,用来间隔年、月、日的值,我也按他人说的,先抓取webedit控件,然后手工赋值,类似如下

Browser("系统").Page("系统").Frame("mainFrame").WebEdit("WebEdit").Object.value="2010-12-12"

但运行后,似乎控件中只取到一部分值,把2010的20取到了最后一个-后面的位置了。

请教下各位,像这种日期框,难道需要年、月、日分别赋值,怎么处理好呢?

testlab 发表于 2010-12-16 13:16:39

试试type方法

arivn 发表于 2010-12-16 15:28:27

你可以直接使用日期函数来赋值,效果是一样的

常用字的日期函数有Now、IsDate、CDate或Date。

还有一个日期转化函数FormatDateTime

skyzhu 发表于 2010-12-16 17:10:43

回复 1# wslf


    你应该确认一下,这是一个框还是三个框
3个当然就需要3次分别赋值

wslf 发表于 2010-12-17 14:01:08

本帖最后由 wslf 于 2010-12-17 14:20 编辑

感谢楼上各位的回复,
第一个方法试了,直接报错(我是直接改的脚本,不知道是否还要做什么设置)
第二个方法,用日期函数,结果是一样的,值赋不上去。
第三个方法,我把一个日期框当成3个WebEdit,分别赋值,结果值倒赋上去了,但系统报错,系统认为是空,提示还是没有值。不知什么原因、

skyzhu 发表于 2010-12-17 15:03:15

回复 5# wslf


    1. webedit肯定是没type的
2. VBS里日期和字符串差别不大,要么自动会转,要么就是没反应
3. 既然3个上去了,认为是空的,说明最后的提交或者查询是从其他地方读取的值(日期选择控件中生成的),表面的只是显示用的,实际的可能在界面中隐藏了,分析一下那个日期控件的赋值原理,对实际的控件进行赋值即可

wslf 发表于 2010-12-17 17:39:27

我挺纳闷的,这个日期框也可以手动输入值的啊,为什么手输的就可以呢,录制填上去的就不行呢?

wslf 发表于 2010-12-22 09:25:40

本帖最后由 wslf 于 2010-12-22 09:28 编辑

费劲心思,现在终于能对“日”进行参数化了,还不能对整个日期进行参数化。
Browser("系统").Page("系统").Frame("mainFrame").Link("▼").Click

Browser("系统").Page("系统").Frame("mainFrame").WebElement("icon_clock").Click
Browser("系统").Page("系统").Frame("mainFrame").WebElement("icon_clock").Object.innertext="23"----代表选择是23日,这块也对日进行参数化

Browser("系统").Page("系统").Frame("mainFrame").WebElement("icon_clock").Click
Browser("系统").Page("系统").Frame("mainFrame").WebElement("icon_clock").FireEvent "ondblclick"




但对我之前的种种失败,还是很疑惑。期待高手能帮我解答一下。

开朗幽默 发表于 2010-12-22 11:11:26

你先直接录制一个脚本出来呢,看一下录制的脚本里边是怎么描述的

wolaizhinidexin 发表于 2010-12-24 15:39:45

实现上他是一个webedit,可以强行给innertext赋一个date,然后对这个date进行参数化。我想这样是可以的

wslf 发表于 2010-12-24 17:33:34

郁闷了。那天试的WebElement("icon_clock").Object.innertext="23" 的方法,当编辑页面有2个日期框的话,脚本就运行不成功了,报图中错误,有一个日期框可以。

回楼上,手动抓取的时候,整个日期框被“-”隔成3个webedit,然后它的vaule是所说年、月、日的值,这个已经试了,有点问题。
页: [1]
查看完整版本: 日期框录制问题