Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript函数中的变量-简单答案_Javascript_Jquery - Fatal编程技术网

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”函数名的变量。谢谢,现在它就像一个梦一样工作。虽然它仍然不调用脚本,但我想这完全是另一个问题。