This tag is only allowed as child element of <ISLOOP>
.
Loops are blocks of code that are executed repeatedly until a specific condition is met. Use <ISLOOP>
to loop through the elements of a specified iterator. For example, using <ISLOOP>
you can list iterable data like categories, products, shipping, or payment methods on a web page.
Multiple <ISLOOP>
statements can be nested to construct more complex loop structures.
<ISLOOP>
has the two supporting tags <ISBREAK>
and <ISNEXT>
. Both tags can only be used inside the <ISLOOP>
tag.
Use <ISBREAK>
within an <ISLOOP>
construct to unconditionally terminate the loop. If <ISBREAK>
is used in a nested loop, it will only terminate the inner loop.
Usually, the <ISBREAK>
tag is used within <ISIF>
tags to terminate a loop when a certain condition is met.
Use <ISNEXT>
to jump forward to the next element in an iterator. In nested loops, this tag affects only the iterator of the inner loop. In case an iterator has already reached its last element, or an iterator is empty when an <ISNEXT>
is processed, the loop is terminated instantly.
<isloop iterator = "{ISML variable identifier}" [ alias = "{simple name}" ] [ counter = "{counter name}" ] > ... some HTML and ISML code ... [<isnext>]* [<isbreak>] </isloop>
In this example, <ISBREAK>
terminates the loop after displaying three product names, even if the products iterator contains more than three products:
<ISSET name="counter" value="#0#"> <ISLOOP iterator="basket:product"> <ISPRINT value="#product:name#"> <BR> <ISSET name="counter" value="#counter + 1#"> <ISIF condition="#counter >= 3#"> <ISBREAK> </ISIF> </ISLOOP>