当前页面为Add.phtml ..,单击“保存”按钮时,应将其重定向到index.phtml ..控制器内已经存在的索引页面的URL。 但是我做不到..有人可以指出哪一部分错了吗?
add.phtml
中的JSfunction addMembAndAppDetail(){
var m_register = 0;
if($('input[name="register"]').is(':checked'))
{
m_register = 1;
}
var m_active = 0;
if($('input[name="status"]').is(':checked'))
{
m_active = 1;
}
$.ajax({
url: '/membership/membership-setup/ajax-add-multiple/',
type: 'POST',
async : false,
data: {
'm_owner' : $('#m_owner').val(),
},
dataType: 'json',
success: function(response){
window.location.href = response.url;
}
});
}
内部控制器
public function ajaxAddMultipleAction(){
$auth = Zend_Auth::getInstance();
$data = array(
'm_owner' => $this->_getParam('m_owner', null)
);
$membershipDb = new Membership_Model_DbTable_TblMembership();
$membershipDb->addData($data);
$this->_helper->flashMessenger->addMessage(array('success' => "Record saved"));
$url = $this->_redirect($this->baseUrl . '/membership/membership-setup/index');
echo json_encode(array('msg'=>"Success.", 'url'=>$url, 'status'=>true));
}
答案 0 :(得分:0)
您只是返回url,但从未使用过。如果您的网址有效,则可以更改成功方法以重定向客户端
success: function(response){
window.location.href = response.url
}
修改
我测试了您的ajax调用,如果您删除dataType: 'json'
,它看起来很正常。我不知道为什么会导致此问题,但将其删除后应该可以工作。
无论如何,dataType
的默认值为Intelligent Guess
,因此它将为您自动猜测数据类型