javascript函数中的变量-简单答案
我发现这与我面临的问题完全相同,但答案建议使用对象进行动态访问。这可能很好,但我正在寻找关于如何在函数名中包含变量的确切简单答案 我正在使用并且不敢弄乱代码,所以我不能使用对象或其他任何东西。问题是,使用javascript函数中的变量-简单答案,javascript,jquery,Javascript,Jquery,我发现这与我面临的问题完全相同,但答案建议使用对象进行动态访问。这可能很好,但我正在寻找关于如何在函数名中包含变量的确切简单答案 我正在使用并且不敢弄乱代码,所以我不能使用对象或其他任何东西。问题是,使用[$(“#clockpick”+x).clockpick]的结果不是[$(“#clockpick”).clockpick],而是[$(“#clockpick”+x).clockpick] 这一切都发生在一个PHP循环中,看起来像这样: var x = 0; (declared previousl
[$(“#clockpick”+x).clockpick]
的结果不是[$(“#clockpick”).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++;
var x=0;(以前在循环外部声明)
函数doit()
{
$(“#时钟拾取”+x)。时钟拾取
({
星空:7,
完时:20
...
});
}
x++;
timepicker.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()' />
?>
var时间=0;
函数时钟器()
{
$(“#时钟拾取”+次)。时钟拾取
({
星空:7,
完时:20
});
}时代++;
您正在使用一个javascript变量在php循环中递增。
问题是php只需按原样编写javascript代码,在php循环的每次迭代中打印$(“#clockpick”+次)
。
为了实现您想要做的事情,您应该使用$foo
而不是像这样无用的javascript变量times
<?php
$goo = $_POST['goo'];
for ($foo = 0; $foo < $goo; $foo++)
{
?>
<script>
function clocker()
{
<?php
print "$('#clockpick$foo').clockpick"
?>
({
starthour: 7,
endhour: 20
});
}
</script>
<?php
print "<input type='text' id='clockpick$foo' onclick='clocker()' />"
}
?>
函数时钟器()
{
在这里看不到PHP或任何其他循环。看起来不错。您如何知道结果是错误的?这与链接的问题无关,这里您的jquery选择器是可变的(应该总是有效的),不是你的函数名。x
是PHP变量还是Javascript变量?你能给我们看看你的PHP吗?Artyom-我没有在示例中包括整个页面。基本上PHP循环一个与这个js相关的输入字段,这样当用户点击该字段时,它应该会触发这个脚本。如果我像这样手动测试它,它可以正常工作这个[$(“#clockpick5”).clockpick]。然后它在第五个文本字段上工作,但由于我不知道要生成多少字段,我想到了使用前面提到的js变量。所以我知道代码工作得很好,但问题是我不知道如何获得“x”函数名的变量。谢谢,现在它就像一个梦一样工作。虽然它仍然不调用脚本,但我想这完全是另一个问题。