2017-01-13 87 views
0

总之,我正在尝试做我的imacros脚本的错误日志。如果它到达带有标题第一章的页面,则表示前面的代码无法工作。错误的SET格式。不知道哪一个我做错了

TAG POS=1 TYPE=H1 ATTR=TXT:Chapter<SP>One EXTRACT=TXT 


SET !VAR2 EVAL("var text=\"{{!EXTRACT}}\"; if(text==\"Chapter One\") {iimPlay("code: ADD !extract {{!NOW:yyyymm}}\nADD !extract {{!COL2}}\nADD !extract Cannot<SP>Access<SP>Page\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=logs.txt");iimPlay("0-DeleteAll.iim");};text;") 

指向此行的错误。 SET指令的

SET !VAR2 EVAL("var text=\"{{!EXTRACT}}\"; if(text==\"Chapter One\") {iimPlay("code: ADD !extract {{!NOW:yyyymm}}\nADD !extract {{!COL2}}\nADD !extract Cannot<SP>Access<SP>Page\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=logs.txt");iimPlay("0-DeleteAll.iim");};text;") 

格式错误,线43(出错代码:-910)

不知道哪一个。 它必须是明显的部分。

回答

0

该错误是EVAL字符串内部未转义的双引号字符的结果,特别是在包含SET命令的行上的字符位置79处。由于EVAL的主要参数是一个字符串值,所以必须使用\字符来转义任何嵌入的引号。 \“。

但更重要的是,即使您修复了嵌入式引号字符,此代码也无法运行,因为您无法在EVAL中调用iimPlay或任何其他iMacros脚本接口方法.EVAL命令使用的JavaScript引擎运行在与浏览器使用的主要JavaScript引擎不同的上下文中,因此调用iimPlay将导致“iimPlay未定义”(错误代码:-1001)。

相关问题