我是JavaScript的新手,我需要一些帮助从iMacros中获得最后的提取值。问题是,当我使用JavaScript函数alert()时,它显示了正确的最后提取,但是如果条件不起作用的话。
宏步骤:
我得到的错误是:
TypeError:路径未定义,行-633 (错误代码:-991)
以下是代码:
var numPage = prompt("current numPage?");
numPage++;
var i = 1;
var macroStart;
macroStart = "CODE:";
macroStart += "'set global variables" + "\n";
macroStart += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macroStart += "SET tabCheck NULL" + "\n";
macroStart += "SET !ERRORIGNORE YES" + "\n";
macroStart += "SET !EXTRACT NULL" + "\n";
macroStart += "SET !TIMEOUT_STEP 1" + "\n";
macroStart += "SET !CLIPBOARD NULL" + "\n";
macroStart += "SET productUrl {{!URLCURRENT}}" + "\n";
macroStart += "TAG POS={{i}} TYPE=IMG ATTR=SRC:https://www.xxx.sk/admin/xxx/xxx/img/uprav.gif" + "\n";
macroStart += "TAG POS=1 TYPE=A ATTR=ID:zalozka_obrazky" + "\n";
macroStart += "TAG POS=1 TYPE=A ATTR=TXT:2 EXTRACT=TXT" + "\n";
macroStartExtract = iimGetLastExtract();
if (macroStartExtract == 2) {
var goToProductUrl;
goToProductUrl += "'back to main product's page" + "\n";
goToProductUrl += "SET !VAR5 2" + "\n";
goToProductUrl += "PROMPT !VAR5" + "\n";
iimPlay(goToProductUrl);
} else {iimPlay(goToProductUrl);}
var macroChangePage;
macro2 = "CODE:"
macro2 += "TAG POS=2 TYPE=A ATTR=TXT:{{numPage}}"
while (i < 2) {
iimSet("i",i)
iimPlay(macroStart)
i++;
if (i == 2) {
iimSet("numPage", numPage)
iimPlay(macroChangePage)
numPage++
i = 1;
}
}发布于 2017-08-09 20:39:35
我检查了代码中的问题,发现它在下面的块中失败了。
else {iimPlay(goToProductUrl);}因为goToProductUrl变量是在if条件下定义的。if没有被执行,当它进入else块时,变量是未定义的,因此程序失败。由于缺少URL而无法检查程序工作,但其他块是否应该是这样的呢?
else {iimPlay(macroStart);}javascript错误已修复,请尝试在删除错误后构建代码。
var numPage = prompt("current numPage?");
numPage++;
var i = 1;
var macroStart;
macroStart = "CODE:";
macroStart += "'set global variables" + "\n";
macroStart += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macroStart += "SET tabCheck NULL" + "\n";
macroStart += "SET !ERRORIGNORE YES" + "\n";
macroStart += "SET !EXTRACT NULL" + "\n";
macroStart += "SET !TIMEOUT_STEP 1" + "\n";
macroStart += "SET !CLIPBOARD NULL" + "\n";
macroStart += "SET productUrl {{!URLCURRENT}}" + "\n";
macroStart += "TAG POS={{i}} TYPE=IMG ATTR=SRC:https://www.xxx.sk/admin/xxx/xxx/img/uprav.gif" + "\n";
macroStart += "TAG POS=1 TYPE=A ATTR=ID:zalozka_obrazky" + "\n";
macroStart += "TAG POS=1 TYPE=A ATTR=TXT:2 EXTRACT=TXT" + "\n";
macroStartExtract = iimGetLastExtract();
if (macroStartExtract == 2) {
var goToProductUrl;
goToProductUrl += "'back to main product's page" + "\n";
goToProductUrl += "SET !VAR5 2" + "\n";
goToProductUrl += "PROMPT !VAR5" + "\n";
iimPlay(goToProductUrl);
} else {iimPlay(macroStart);}
var macroChangePage;
macro2 = "CODE:"
macro2 += "TAG POS=2 TYPE=A ATTR=TXT:{{numPage}}"
while (i < 2) {
iimSet("i",i)
iimPlay(macroStart)
i++;
if (i == 2) {
iimSet("numPage", numPage)
iimPlay(macroChangePage)
numPage++
i = 1;
}
}https://stackoverflow.com/questions/45571470
复制相似问题