【问题标题】:Auto increment name and ID in javascriptjavascript中的自动递增名称和ID
【发布时间】:2011-04-14 17:58:46
【问题描述】:

好的,所以我有一个 php 脚本,它接受一个变量,按行分解它,然后计算行数。如果多于三行,则拆分变量并将三行之外的所有内容放入可扩展的 javascript 框中。整个脚本处于一个循环中,因为我有多个变量需要为该行号检查进行处理。

我在网上找到的可扩展 javascript 区域的脚本,因为我不擅长 javascript,所以我不知道如何更改它。

所以:

  1. 因为此脚本处于循环中,所以它针对不同的变量运行了许多不同的时间。所以我需要“a1”是一个变量,每次运行这个脚本时都会增加一个。否则,如果我运行多个变量,“展开”按钮会展开所有框,因为它们的名称都相同。这将是 php 中的小菜一碟,但我迷失在 javascript 中。

  2. 另外,更多的是旁注,但有谁知道我如何才能更好地将这个 javascript 合并到我的 php 中,而不用不断地结束和启动我的 php?

这是我的 php 中带有 javascript 的部分。

     if ($numberlines > 3) 
            {

            ?>

            <div onClick="openClose('a1')"style="cursor:hand;cursor:pointer"><b>Expand</b></div>
            <div id="a1" class="texter">

                <?php

                foreach ($data as $final) 
                    {
                        echo $final."";
                    }

                ?>

            <br /><br />
            </div>


            <?php

            }

                            ?>

【问题讨论】:

  • onClick 可能会给您带来问题。试试onclick。

标签: php javascript variables loops include


【解决方案1】:

由于您已经在使用循环,您应该能够使用自动递增的整数来处理更新的命名。

例如:

 $count = 0;
 while(keepGoing)
 {
     if ($numberlines > 3) 
     {
         $count++;
 ?>

 <div onClick="openClose('a<?=$count?>')"style="cursor:hand;cursor:pointer"><b>Expand</b></div>
 <div id="a<?=$count?>" class="texter">

 <?php
         foreach ($data as $final) 
         {
             echo $final."";
         }
 ?>

        <br /><br />
        </div>

 <?php
     }
 ?>

【讨论】:

    【解决方案2】:

    在回答您的第一个问题时,据我所知,如果不将值存储在文件中或将其作为 URL 参数传递,则不可能在脚本执行中携带变量。如果我是你,我会将你的脚本重写为只执行一次,并将你的代码包装在一个以输入变量作为参数的函数中,然后为每个变量调用它,这样你就可以轻松地将 a1 变量存储在你的每个变量都有不同的调用。

    希望有帮助

    【讨论】:

      猜你喜欢
      • 2014-09-10
      • 2019-10-28
      • 1970-01-01
      • 2010-10-04
      • 2015-03-10
      • 1970-01-01
      • 2015-05-03
      • 2012-06-17
      相关资源
      最近更新 更多