[Solved] For condition running only once when calling JS File


What @Lloyd said is correct, the + i is necessary to make unique pairs.

Try this:

for (int i = 0; i <= 2; i++)
{
    Page.ClientScript.RegisterStartupScript(GetType(), "a"+ i, "foo('hello');", true);
}

You were missing the semicolon at the end of the javascript function.

This is what was being generated with what @Lloyd suggested

<script type="text/javascript">
//<![CDATA[
foo("hello")foo("hello")foo("hello")//]]>
</script>

And this is what you want:

<script type="text/javascript">
//<![CDATA[
foo('hello');foo('hello');foo('hello');//]]>
</script>
</form>

solved For condition running only once when calling JS File