javascript - CakePHP,将参数传递给js.php文件?

标签 javascript cakephp

我正在尝试使用 PHP 生成 JavaScript 文件。我已包含该文件,并且所有脚本都在其中运行。我想不明白的是我如何将参数传递给这个文件?

将参数从 Controller 传递到我使用的 View :

$this->set('object_models', $object_models);

将其从 View 传递到我使用的元素:

echo $this->element('pageElement', array('object_model' => $object_model));

我通过将我的 js.php 文件添加到 View 中来包含它:

echo $this->Html->script('modelDrawer.js.php?', false);

最佳答案

您是否考虑过使用parseExtensions并将您的 JS 文件作为 Controller 的 View 包含进来,您可以直接在其上执行逻辑?

这与使用 Cake 生成 rss feed 和 xml 文件的方式类似。

See this article

更新

转到routes.php 文件,然后添加行 Router::parseExtensions('js');

然后,创建一个名为 DynamicController.php 的 Controller 。 - 并将其粘贴到那里:

class DynamicController extends AppController {

    public $uses = array();

    public function modelDrawer() {
        // logic in here
        $this->set( 'object_models', $object_models );
    }
}

创建查看文件夹和查看文件:

/app/View/Dynamic/js/model_drawer.ctp

在该 model_drawer.ctp 文件中,您可以放置​​要蛋糕化的 View /脚本逻辑。

然后您可以像这样调用您的脚本:

<script type="text/javascript" src="/dynamic/modelDrawer.js"></script>

尝试一下!

关于javascript - CakePHP,将参数传递给js.php文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14143629/

相关文章:

javascript - Google 脚本不会返回 Google 电子表格中的超链接

javascript - 在没有 LMS 的情况下使用 SCORM 运行时 API?

optimization - 让本地主机更快?

jquery - cakephp - 使用表单助手禁用自动输入类型检测

php - 无法定位与分页兼容的对象。使用 CakePHP

cakephp - 在 Cakephp 中允许特定页面

php - cakePHP- SQL- 在 sql 中添加来自不同表的值

javascript - 使用 jquery/php 查找链接是否已访问

javascript - Android Studio React Native 构建失败

javascript - Uncaught SyntaxError : Unexpected end of input js