0

我在本地 wamp 上安装了 Cakephp:

c:\wwww\appname

我在视图中有一个倒计时脚本:

<script type="text/javascript">
$(document).ready(function()
{   
    var austDay = new Date();
    austDay = new Date(<?= $nextclaimtime * 1000;?>);
    $("#countdown").countdown({until: austDay, format: 'HMS', expiryUrl: "/users/add"});
});
</script>

如果我在 expiryUrl 中指定 /users/add 一切都在实时环境中工作,但在我的本地环境中它不起作用,因为应用程序安装在 appname 下。

更改代码以使 Ajax 调用在两种环境中都有效的正确方法是什么?

4

1 回答 1

1

正确的方法是使用路由器生成 URL,这将创建一个相对于基本路径/URL 的 URL。

<?php $url = \Cake\Routing\Router::url(['controller' => 'Users', 'action' => 'add']); ?>

var expiryUrl = <?= json_encode($url) ?>;
$("#countdown").countdown({until: austDay, format: 'HMS', expiryUrl: expiryUrl});

也可以看看

于 2016-08-09T16:19:14.860 回答