我见过很多类似我的话题,但是我无法解决看起来如此简单的问题。
我在JS中具有此功能:
function displayFullDesignation(id, select) {
var fullDesignation = $('option:selected', select).data('idacc');
var myId = parseInt(fullDesignation);
$.ajax({
url: '<?php echo $this->url(array('controller' => 'catalog', 'action' => 'fullname'));?>',
type: 'POST',
datatype: 'json',
data: {'id': myId},
success: function(data) {
if(data.success){
console.log(data.success);
}
}
});
return fullDesignation;
}
在我的控制器中:
/**
* AJAX Action
*/
public function fullnameAction($params) {
$ajaxContext = $this->_helper->getHelper('AjaxContext');
$ajaxContext->addActionContext('fullname', 'json')->initContext();
$response = array();
$params = $this->getAllParams();
$listModels = Application_Model_Catalog_Accessory_List::getDesignationComplet($params['id']);
$response['success'] = true;
$response['aaData'] = $listModels;
$this->getHelper('json')->sendJson($response);
}
我不知道为什么我不能从这个ajax调用中得到任何东西。如果我尝试在函数中执行var_dump,则它什么也不做,因此我认为我的通话不好,但是我还有其他这样工作的通话。
我在做什么错了?
如果我执行“ data”的console.log,它会给我HTML。 data.success给了我未定义的内容。
谢谢!!