我在cakePHP應用程序中使用ajax和jQuery。
和我的JavaScript功能放在一個JavaScript文件中。在CakePHP中調用Ajax時使用動作url的最佳實踐
現在在我的本地系統中的文件被保存在「/樣本」目錄中,這樣的路徑,而我調用該函數將
在ajax.js$.post({url : "/sample/controller/action"})
但託管後的網址將成爲
$.post({url : "/mydomain.com/controller/action"})
在CakePHP
我們$html->url
生成URL
但由於這個代碼是在js文件我CA不使用該功能
我不想託管之前手動更改所有的Ajax操作URL
我爲使用任何框架編寫的每個Web應用程序都這樣做。如果你使用Smarty,並且需要JavaScript中的baseUrl,它會更方便。你必須做{/ literal} {$ baseUrl} {/ literal},這是一個皇家PITA。上述解決方案很好地解決了這個問題。 – 2010-07-29 14:59:32
這是正確的答案,但它不適合我。這可能是因爲我使用了Cake 2,但該解決方案適用於早期版本。儘管如此,我不得不使用它來在Cake2中工作的代碼是'' – Joseph 2012-06-26 08:29:07
對於CakePHP 3,我使用'var appBaseUrl ='<?php echo $ this-> Url-> build('/',true); ?>';' – XerXes 2015-09-24 14:01:51