在我的应用程序中,我尝试在我的JQUery中使用Php变量。其中$viewfields是我从cakephp控制器中检索到的数组。如果我尝试使用如下所示的方法,我得到的错误是for( in Array){\n
for(<?=$viewfield;?> in <?=$viewfields;?>){}请推荐我。该怎么做..
注意:我之前使用了上面的代码,比如
<?php foreach ($viewfields as $r): ?>
<?php endforeach?>它运行良好。但是我想把它改成for(),但是它显示了错误,为什么呢?
发布于 2009-07-29 09:04:58
因为$viewfields是一个PHP对象,所以您需要断言它的回显表示是有效的javascript。因此,您需要将其转换为有效的JSON数组/对象字符串。this page有一个函数可以做这样的事情。由于您没有公开数组的数据,因此很难判断链接给出的函数对于您的目的是否过于复杂。最后,确保$viewfield是一个有效的javascript标识符(ascii字符串,不以数字等开头)。
发布于 2009-07-29 09:06:34
正如你在其他问题中所回答的,PHP和Javascript不能像这样一起工作。你必须至少将PHP数组转换为某种Javascript类型,例如使用Cake的JavascriptHelper:
echo $javascript->value($myVar);查看生成的HTML以验证结果。
请确保您了解是什么和Javascript是什么。您的第一个和第二个构造的目的完全不同!
https://stackoverflow.com/questions/1198885
复制相似问题