我使用了一个参数月的ajax url,我从选项框中选择了
$.ajax({
url: baseUri + 'attendancelist/search/attsearch/month/' + month ,
type: 'GET'
...
});
所以我想在 attsearchAction()中调用该参数 所以我这样编码
public function attsearchAction() {
$month = $this->request->get('month'); //current testing framework is phalcon
//$month = $this->_request->getParam('month'); //zend framework is ok by getParam
var_dump($month);exit; //null
}
但它只显示null?如何修复>>
答案 0 :(得分:3)
您正在将Phalcon网址参数attendancelist/search/attsearch/month/[monthValue]
与GET参数(?month=[monthValue]
)混合。
在Phalcon中你必须设置你的路由器才能知道url的哪一部分是参数。
$router->add(
"attendancelist/search/:action/month/{month}",
array(
"controller" => [your controller],
"action" => 1
)
);
(有关详细信息,请参阅the Phalcon Router docs)
然后在您的操作中,您必须从调度程序获取参数。
public function attsearchAction() {
$month = $this->dispatch->getParam('month');
var_dump($month);exit;
}
或
public function attsearchAction($month) {
var_dump($month);exit;
}
答案 1 :(得分:2)
如果要使用url传递参数,则应使用?
传递参数
url: baseUri + 'attendancelist/search/attsearch/?month=' + month
或者,当您使用ajax时,您可以使用ajax发送数据。
$.ajax({
url: baseUri + 'attendancelist/search/attsearch/',
type: 'GET',
data: {month: month},
...
});