1

I would like to loop "pin_board" and replace the "boardarray" every time it loops.. here is the code below..`

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];

var text = 'pin_board';

for(var i in boardarray) {


pin_board = "CODE:";
pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "\n";
pin_board += "TAB T=1" + "\n";
pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
pin_board += "WAIT SECONDS=3" + "\n";
pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray + "\n";
pin_board += "WAIT SECONDS=3" + "\n";
pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
pin_board += "WAIT SECONDS=5" + "\n";

}
iimPlay(pin_board);

Thanks for the reply @karaxuna.. I modify my script and tried it on imacros.. unfortunately, it only loop once and instead of starting with board1 it started and ends in baord5. So it only run once. I don't know if I miss something.

Here is the edited code..

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];

var text = 'pin_board';

for(var i = 0; i < boardarray.length; i++)
{
pin_board = "CODE:";
pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "\n";
pin_board += "TAB T=1" + "\n";
pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
pin_board += "WAIT SECONDS=3" + "\n";
pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "\n";
pin_board += "WAIT SECONDS=3" + "\n";
pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
pin_board += "WAIT SECONDS=5" + "\n";

}
iimPlay(pin_board);

thanks,

chupstogo
  • 11
  • 2
  • 6
  • I believe iMacros is just using JavaScript, in which case this question has been asked and answered: http://stackoverflow.com/questions/9329446/for-each-in-a-array-how-to-do-that-in-javascript If your question *isn't* about how to loop through the array, could you edit to clarify? – T.J. Crowder Jul 01 '13 at 07:28

3 Answers3

1
for(var i = 0; i < boardarray.length; i++)
{
    //...
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "\n";
}

Don't use for in for arrays, use it for objects to list it's properties

EDIT

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];

var pin_board = '';

for(var i = 0; i < boardarray.length; i++)
{
    pin_board += "CODE:";
    pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "\n";
    pin_board += "TAB T=1" + "\n";
    pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
    pin_board += "WAIT SECONDS=3" + "\n";
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "\n";
    pin_board += "WAIT SECONDS=3" + "\n";
    pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
    pin_board += "WAIT SECONDS=5" + "\n";
}
karaxuna
  • 26,752
  • 13
  • 82
  • 117
  • thanks for the reply. But I didn't make the code work.. maybe I missed something.. Also edited my post.. – chupstogo Jul 02 '13 at 03:12
  • change `var text = 'pin_board';` to `var pin_board = '';` and write `pin_board += "CODE:";` instead of `pin_board = "CODE:";` – karaxuna Jul 02 '13 at 06:47
0

"...unfortunately, it only loop once and instead of starting with board1 it started and ends in baord5. So it only run once. I don't know if I miss something."

of course, cuz for do the work and then run iimPlay(pin_board);

if you want to run every time - just put iimPlay(pin_board); in the for

for(var i = 0; i < boardarray.length; i++)
{
    pin_board += "CODE:";
    pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "\n";
    pin_board += "TAB T=1" + "\n";
    pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
    pin_board += "WAIT SECONDS=3" + "\n";
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "\n";
    pin_board += "WAIT SECONDS=3" + "\n";
    pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
    pin_board += "WAIT SECONDS=5" + "\n";
    iimPlay(pin_board);
}
whitesiroi
  • 2,725
  • 4
  • 30
  • 64
-1

Do you guys read wiki.imacros.net ?

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];

var pin_board = '';

for(var i = 0; i < boardarray.length; i++)
{
    pin_board += "CODE:";
    pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "\n";
    pin_board += "TAB T=1" + "\n";
    pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
    pin_board += "WAIT SECONDS=3" + "\n";
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:{{board}}" + + "\n";
    pin_board += "WAIT SECONDS=3" + "\n";
    pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "\n";
    pin_board += "WAIT SECONDS=5" + "\n";

iimSet("board", boardarray[i])
iimPlay(pin_board);
}

http://wiki.imacros.net/iimSet

edinvnode
  • 3,497
  • 7
  • 30
  • 53