【问题标题】:Ajax on Success redirect URL from controller来自控制器的成功重定向 URL 的 Ajax
【发布时间】:2019-06-10 05:33:47
【问题描述】:

当前页面是 Add.phtml..当点击保存按钮时,它应该被重定向到 index.phtml..已经在控制器中的索引页面的 URL。 但我做不到..有人能指出哪一部分是错的吗?

add.phtml 里面的JS

function 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));
    }

【问题讨论】:

  • 我没有看到您在任何地方进行任何(或试图进行)重定向。我所能看到的是您返回一个带有 URL 的 json 对象,但我没有看到您在警报之外的任何地方使用它?还有,为什么你有async: false

标签: php ajax model-view-controller zend-framework


【解决方案1】:

您只是返回了 url,但您从未使用过它。如果您的网址有效,那么您可以更改成功方法以重定向客户端

success: function(response){
    window.location.href = response.url
}

编辑
我测试了您的 ajax 调用,看起来如果您删除 dataType: 'json' 它可以完美运行。我不知道为什么它会导致问题,但删除它后它应该可以工作。
不管怎样dataType 默认值是Intelligent Guess 所以它会自动为你猜测数据类型

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    • 2015-08-23
    • 1970-01-01
    • 2016-01-06
    相关资源
    最近更新 更多