PowerShell中执行Javascript的方法示例

 更新时间:2014年07月02日 09:17:31   投稿:junjie  
这篇文章主要介绍了PowerShell中执行Javascript的方法示例,特殊场景下可能会用到这个技巧,需要的朋友可以参考下

背景与问题

别人写了一个Web应用程序,使用的是ASP.NET Forms技术。其中用到了一个DropdownList控件,用户选择了某项后,页面会回传,然后在下面再动态的显示另外一个控件,逻辑很简单。

这是产生的的部分的html源码:

复制代码 代码如下:

<select name="eventTypeDropDown" id="eventTypeDropDown" onchange="javascript:setTimeout('__doPostBack(\'eventTypeDropDown\',\'\')', 0)">
 <option value="Exception" selected="selected" >Exception</option>
<option value="Memory">Memory</option>
<option value="Perf">Perf</option>
</select>

还是蛮幸运的,这个控件有id。我写的PowerShell脚本如下:

复制代码 代码如下:

$ie = new-object -com "InternetExplorer.Application"
$eventType = $ie.Document.getElementById('eventTypeDropDown')
$eventType.selectedIndex=1

脚本运行后,页面上的下来列表选中了Memory,但是因为页面没有回传,下面的动态控件没有显示出来。

纠结了我一下午。这个时候请不要告诉我,我可以使用其它测试框架,测试工具。在这里,不想引入其它高大上的东西,只想使用IE本身去解决这个问题。

解决方案

我下意识的打开F12开发调试工具,把onchange事件的javascript代码复制进控制台,运行了下,页面开始刷新,下面的动态控件加载出来了。此时看到了一缕曙光。也就是,如题:在IE ComObject中执行Javascript可以解决这一问题。那怎么执行呢?

复制代码 代码如下:

$ie.Document.parentWindow.execScript(javascript:setTimeout('__doPostBack(\'eventTypeDropDown\',\'\')', 0)",'')

相关文章

  • PowerShell打开或关闭光驱

    PowerShell打开或关闭光驱

    这里给大家分享的是使用PowerShell实现打开或关闭光驱的小程序,大家也许根本用不到,这里只是个例子,让大家学习下如何操作windows API
    2015-09-09
  • PowerShell入门教程之创建和使用配置文件实例

    PowerShell入门教程之创建和使用配置文件实例

    这篇文章主要介绍了PowerShell入门教程之创建和使用配置文件实例,PowerShell的配置文件都是些普通的PowerShell脚本文件,需要的朋友可以参考下
    2014-10-10
  • 探索PowerShell (二) PowerShell的基本操作

    探索PowerShell (二) PowerShell的基本操作

    这里介绍下如何打开powershell控制台,在 程序>附件>windows powershell中即可,主要是界面不再是dos窗口,据说功能也增加了很多
    2012-12-12
  • Powershell ISE的抽象语法树编程示例

    Powershell ISE的抽象语法树编程示例

    这篇文章主要介绍了Powershell ISE的抽象语法树编程示例,本文讲解了抽象语法树的一些概念,并给出了代码实例,需要的朋友可以参考下
    2015-03-03
  • PowerShell包含另一个脚本文件和获取当前脚本所在目录的方法例子

    PowerShell包含另一个脚本文件和获取当前脚本所在目录的方法例子

    这篇文章主要介绍了PowerShell包含另一个脚本文件和获取当前脚本所在目录的方法例子,需要的朋友可以参考下
    2014-08-08
  • Powershell批量给文件增加前辍实例

    Powershell批量给文件增加前辍实例

    这篇文章主要介绍了Powershell批量给文件增加前辍实例,即Powershell批量修改文件名,文件名中统一设定一个带数字的前辍,需要的朋友可以参考下
    2014-06-06
  • Powershell小技巧之从文件获取系统日志

    Powershell小技巧之从文件获取系统日志

    事件日志对于系统管理员的重要性自不待言,而基于图形界面的事件查看器毫无疑问是我们进行日志管理的首选工具,但绝不是最快捷的工具。其实,PowerShell提供了一种更简单的方式,利用它我们不仅可访问当前系统的事件日志,而且还可对数据进行排序、格式化等等。
    2014-10-10
  • 探索PowerShell(十三) WMI对象介绍

    探索PowerShell(十三) WMI对象介绍

    我记得在xp时代,经常使用的工具有一个叫做WMI Administrative Tools,是微软官方提供的用来查看、编辑WMI对象的,只是现在好似不支持新的系统了
    2012-12-12
  • PowerShell隐藏不显示窗口的多种方法

    PowerShell隐藏不显示窗口的多种方法

    这篇文章主要介绍了PowerShell隐藏不显示窗口的多种方法,本文讲解了启动PowerShell时隐藏自己的窗口、在PowerShell启动其它进程时隐藏窗口、使用PowerShell隐藏其它进程的窗口三种方法,需要的朋友可以参考下
    2015-06-06
  • PowerShell中获取Windows系统序列号的脚本分享

    PowerShell中获取Windows系统序列号的脚本分享

    这篇文章主要介绍了PowerShell中获取Windows系统序列号的脚本分享,本文方法是读取注册表中的信息,然后处理成序列号输出,需要的朋友可以参考下
    2014-11-11

最新评论