我想我有一个一般性的路由问题。
看我拿到了什么。我有一个带有分页器的页面。当我进入该页面时,我有一个类似于该"host/OnlineBanking/session_details/session_id:xxxxxx".的url
如果我使用分页器,我会得到类似这样的"host/OnlineBanking/session_details/session_id:xxxxxx/page:2“
仍然很容易理解。
但问题是我在这里使用的JS。我有一个按钮,后面有一个点击事件。
$.ajax({
type: 'POST',
url: "../get_backend_requests",
data: "request_id="+request_id,
dataType: "html",
success :function(html){
element.append(html);
}
}); 所以问题是,如果我像上面那样定义URL,我就可以很好地处理我首先发布的第一个URL。但是带有page-参数的第二个URL呈现的是没有我想要的数据的完整布局。在我从JS调用的操作中,我将autoRender值设置为false,所以不会有问题。
我使用Firebug来弄清楚发生了什么,问题是JS只是将动作附加到前一个动作上。因此,URL看起来像该"OnlineBanking/session_details/get_backend_requests".所以我可以通过在ajax中使用这个" URL:“”../../get_backend_request“来解决这个问题,但是没有/page:2的URL就不再起作用了,因为他尝试使用和操作作为一个控制器。
有人能给我一个提示来解决这个问题吗?
非常感谢!
发布于 2013-07-10 11:55:00
最好在bootstrap.php中声明一个常量
define('HTTP_HOST', "http://" . $_SERVER['HTTP_HOST'].'/');
define('SITE_URL', HTTP_HOST.'your_project_dir_name_if_any/');并按如下方式使用:
$.ajax({
type: 'POST',
url: "<?php echo SITE_URL.'controller_name/get_backend_requests';?>",
data: "request_id="+request_id,
dataType: "html",
success :function(html){
element.append(html);
}
}); https://stackoverflow.com/questions/17548934
复制相似问题