当前位置: 首页 > 编程笔记 >

PowerShell中执行Javascript的方法示例

李俭
2023-03-14
本文向大家介绍PowerShell中执行Javascript的方法示例,包括了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)",'')

 类似资料:
  • EventSource的onmessage方法不执行,浏览器控制台的EventStream中能看到后台推送的消息,是为什么呢?

  • 本文向大家介绍Powershell中显示隐藏文件的方法,包括了Powershell中显示隐藏文件的方法的使用技巧和注意事项,需要的朋友参考一下 支持PS3.0及以后版本。 当你使用 Get-ChildItem 检索文件,默认是不显示隐藏文件的。 要包含隐藏文件,请使用 –Force 参数。 如果只需要显示隐藏文件,可以使用参数-Hidden ,但它只支持PS3.0。

  • 本文向大家介绍Powershell中阻止”确认提示”的方法,包括了Powershell中阻止”确认提示”的方法的使用技巧和注意事项,需要的朋友参考一下 适用于所有版本。 某些命令在执行时会自动提示用户再次确认,这可能会带来一些问题在无人执行脚本的时候。 要阻止弹出确认提示,需要设置-Confirm为false,如: 或者你可以改变Powershell中的确认安全等级,将所有命令的确认提示关闭: 注

  • 本文向大家介绍Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数,包括了Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数的使用技巧和注意事项,需要的朋友参考一下 这里演示如何利用PowerShell将一段Javascript函数字符串交给Jint引擎去执行。 执行Javascript函数 .Net版的Ja

  • 问题内容: 我正在尝试从Jenkins运行PowerShell脚本,但是它似乎完全忽略了执行策略!通过直接执行powershell.exe或使用PowerShell插件来实现 附加信息: Jenkins作为Windows服务运行(使用本地系统帐户,非交互式)。连接到该服务器并检查执行策略确实是: 但是,在运行Jenkins构建时,情况并非如此。这是在构建步骤中执行的输出: 我还尝试从构建步骤明确设

  • 本文向大家介绍JavaScript中停止执行setInterval和setTimeout事件的方法,包括了JavaScript中停止执行setInterval和setTimeout事件的方法的使用技巧和注意事项,需要的朋友参考一下 js 代码中执行循环事件时,经常会用到 setInterval 和 setTimeout 这两个方法,关于这两个方法的细节这里不详细讨论了,简要分享下在需要停止循环事件