• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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小技巧之使用Jint引擎在PowerShell中执行Javascript函数
    • Javascript四舍五入Math.round()与Math.pow()使用介绍
    • JavaScript中的pow()方法使用详解
    上一篇:PowerShell脚本trap语句捕获异常写法实例
    下一篇:Powershell使用嵌套哈希表实例 嵌套哈希表的2种写法例子
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    PowerShell中执行Javascript的方法示例 PowerShell,中,执行,Javascript,