我想从Perl检查一些DOM值(我不想手动使用浏览器和调试器)。
这些DOM值在AJAX调用之后加载,其中一个值的示例函数将是:
<script language="javascript">
try {
var openValue = FComma(fnRound(Symbol[24],2));
if (openValue == "0.00") document.write('n/a');
else document.write(openValue);
} catch (exception) {}
</script>
我无法直接从AJAX获取它。我想知道在AJAX调用完成后是否有可能获取DOM值。此调用仅在开始时完成。
答案 0 :(得分:0)
我会做什么(呃,试试,因为我不确定这会做你想做的)是:使用安装了Web Developer插件的Firefox。加载页面并完成AJAX后,转到Web Developer的View Source菜单并选择View Generated Source;将源复制/粘贴到编辑器和/或Perl脚本中,然后执行您想要的操作。
答案 1 :(得分:0)
尝试使用WWW::Scripter:
use WWW::Scripter;
$w = new WWW::Scripter;
$w->use_plugin('Ajax'); # packaged separately
$w->get('http://some.site.com/that/relies/on/ajax');
$w->eval(' alert("Hello from JavaScript") ');
$w->document->getElementsByTagName('div')->[0]->....
$w->content; # returns the HTML content, possibly modified
# by scripts