ajax里success的内容不执行,前面的执行,网上的方法试了不行

图片说明
function reg() {
var username=$("#userName").val();
var psd=$("#psd").val();
var repsd=$("#repsd").val();

    var param = {};
    param.userName=username;
    param.psd=psd;
    if(username.length==0 && psd.length==0){
        alert("用户名与密码不为空");
    }
    else {
        if (repsd != psd) {
            alert("两次输入的密码不一致");
        }
        else {
            $.ajax({
                url: '/user/register',
                type: 'POST',
                secureuri: false,
                data: param,
                dataType: 'text',
                success: function (data) {
                    var falg = data.falg;
                     if (falg == 'success') {
                        alert(data.successMessage);
                        window.location.href = "/user/loginView";
                    }
                }
            });
        }
    }
}
    success里的内容不执行,看到网上说把dataType里json改成text 或者去掉但是都不行,工具用的maven和idea,后台返回的map。

将接口前面加上@ResponseBody,前端返回类型改json试试

F12 看看请求是不是报错了,浏览器控制台有没有 js 错误。
其次,返回类型这里设置为 text 的话,那么 success 时用就不能直接作为 JSON 对象,而是作为字符串使用。

$.ajax({
        url: '/user/register',
        type: 'POST',
        secureuri: false,
        data: param,
        dataType: 'text',
        success: function (data) {
                console.log(data); //查看返回内容
                if(data){
                    data = eval("(" + data + ")"); //将json转化为对象
                }
                var falg = data.falg;
                if (falg == 'success') {
                        alert(data.successMessage);
                        window.location.href = "/user/loginView";
                }
        },
        error : function(jqXHR, textStatus, errorThrown) {//查看返回是否异常
            console.log(jqXHR.status)
        }
});