我发现这个问题与我面临的问题完全相同,但答案建议使用对象进行动态访问。这可能很好,但我正在寻找关于如何在函数名称中包含变量的确切简单答案。
我用的是ClockPick   ,不敢乱码,所以不能用对象什么的。问题是[ $("#clockpick"+x).clockpick ]结果不是[ $("#clockpick0").clockpick ],而是[ $("#clockpick"+x).clockpick ]。
这一切都发生在 PHP 循环中,看起来像这样:
var x = 0; (declared previously outside of the loop)
<script>
function doit()
{
  $("#clockpick"+x).clockpick
  ({
      starthour: 7,
      endhour: 20
      ...
  });
}
x++;
时间选择器.php
<script>var times = 0;</script>
<?php
$goo = $_POST['goo'];
for ($foo = 0; $foo < $goo; $foo++)
{
  ?>
  <script>
  function clocker()
  {
  $("#clockpick"+times).clockpick
  ({
    starthour: 7,
    endhour: 20
  });
  } times++;
  </script>
  <?php
  print "<input type='text' id='clockpick$foo' onclick='clocker()' />
?>
如前所述,如果我手动将“时间”设置为一个数字,这可以正常工作,但正如你所看到的,我不知道 $goo 有什么数字。总而言之,这仍然是 153 行的实际页面的简化演示。