你能从PHP循环调用JavaScript函数吗?
Can you call JavaScript function from PHP loop?
如果我能做到这一点,我就会受伤,因为我从过去的两天里一直在尝试,但没有成功。
我想从PHP中运行JavaScript函数
PHP示例<div id="meprocess"></div>
<?php
for($i=1;$i<=10;$i++)
{
?>
<script>
jfun(<?php echo $i;?>);
</script>
<?php
}
?>
JavaScript <script type="text/javascript">
function jfun(n)
{
html="Loop is on" + n;
$("<div>"+ html +"</div>").appendTo("div#meprocess");
}
</script>
我正在尝试生成一个一个一个打印循环数的页面。
但是我得到错误jfun没有定义
我能理解的是,我的JavaScript函数在PHP执行时还没有准备好。是否有其他方法,比如在DOM/Page准备好时运行PHP循环,这样JavaScript函数就会准备好,或者其他任何方法。
你必须在调用它之前定义这个函数
http://sandbox.phpcode.eu/g/15b02.php<div id="meprocess"></div>
<script type="text/javascript">
function jfun(n)
{
html="Loop is on" + n;
$("<div>"+ html +"</div>").appendTo("div#meprocess");
}
<?php
for($i=1;$i<=10;$i++)
{
?>
jfun(<?php echo $i;?>);
<?php
}
?>
</script>
您的PHP代码正在生成(以一种非常糟糕的方式…)一些javascript代码将由脚本执行。虽然它应该可以工作,但这绝对不是最好的方法—您应该在js端运行循环,最终从PHP脚本传递值。
然而:"未定义的函数"问题是由于您试图在创建函数之前运行代码;使用jQuery,让一些代码只在加载完所有内容后才执行,使用:
$(document).ready(function(){
// Your code here..
})
还是
$(function(){
// Your code here..
})
如下所述:http://api.jquery.com/ready/
对于For循环,你应该生成一些像这样的js:<div id="meprocess"></div>
<script type="text/javascript">
for (i=1; i<=10; i++) {
jfun(i);
}
</script>
. .也许,从PHP脚本生成最小/最大值:
<?php
$min = 1;
$max = 10;
?>
<div id="meprocess"></div>
<script type="text/javascript">
for (i=<?php print $min; ?>; i<=<?php print $max; ?>; i++) {
jfun(i);
}
</script>
. .这比写N个函数调用来循环要好的多
首先,确保你的javascript函数在函数使用之上。
或者试试<script>jfun("<?php echo $i;?>");</script>
在PHP代码之前编写代码。在这种情况下,函数jfun是已知的。
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 正在全局范围中查找JavaScript函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 如何调用这个匿名 JavaScript 函数
- 通过Ajax将JavaScript函数传递给PHP文件
- 在javascript函数中设置全局变量
- 如何在执行此特定onclick事件时执行JavaScript函数
- 使用javascript函数在页面初始化后加载jquery
- javascript函数同步
- 如何将一个JavaScript函数回调为多个函数
- 在javascript函数中使用php变量
- 代码背后调用一个JavaScript函数的按钮点击-C#
- 将JavaScript函数与HTML分离
- 组合两个javascript函数
- 在 Java 中的 JavaScript 函数中插入 Wicket 值
- javascript函数内部的代码用逗号而不是分号分隔
- href属性内的javascript函数
- 使用html表单中的参数调用JavaScript函数
- 分析Javascript函数中的多个对象
- javascript函数的:和=之间的区别