我发现这个问题与我面临的问题完全相同,但答案建议使用对象进行动态访问。这可能很好,但我正在寻找关于如何在函数名称中包含变量的确切简单答案。
我用的是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 行的实际页面的简化演示。