Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ajax调用成功中的Window.location不起作用_Jquery_Ajax_Asp.net Mvc_Asp.net Ajax - Fatal编程技术网

Jquery ajax调用成功中的Window.location不起作用

Jquery ajax调用成功中的Window.location不起作用,jquery,ajax,asp.net-mvc,asp.net-ajax,Jquery,Ajax,Asp.net Mvc,Asp.net Ajax,我的路线- routes.MapRoute( name: "SupplyChainPressureSocialResults", url: "supply-chain-pressure/results/{id}", defaults: new { controller = "SupplyChainPressure", action = "Results" } ); 控制器方法- //GET:/supply-chain-pressure/ScptR

我的路线-

    routes.MapRoute(
     name: "SupplyChainPressureSocialResults",
     url: "supply-chain-pressure/results/{id}",
     defaults: new { controller = "SupplyChainPressure", action = "Results" }
     );
控制器方法-

//GET:/supply-chain-pressure/ScptResult/{id}
public ActionResult ScptResult(int resultid)
{
   // do something
    return View();
}
ajax cal-

$.ajax({
                    type: "POST",
                    url: configMap.sitePath + "api/Quiz/" + quizResponse.quizId,
                    data: JSON.stringify(quizResponse),
                    success: function (data) {
                        window.location.href = configMap.sitePath + 'supply-chain-pressure/ScptResult' + data.data.quizInstanceID;
                    },

但由于某些原因,重定向没有发生。有人能帮忙吗?

您要重定向到的地方与您的路线不匹配。您的路线正在寻找: 供应链压力/结果/{id}

但您正在重定向到:

供应链压力/ScptResult/{id}

您的路由将永远不匹配,因为您传递的是ScptResult而不是results

您要做的是将管线定义更改为:

routes.MapRoute(
name: "SupplyChainPressureSocialResults",
url: "supply-chain-pressure/{action}/{id}",
defaults: new { controller = "SupplyChainPressure", action = "results" }
);

问题不见了

应该是——

 window.location.href = configMap.sitePath + 'supply-chain-pressure/ScptResult/' + data.data.quizInstanceID;

我错过了结尾处的“/”。

谢谢注意。我做同样的配置。但是它仍然不起作用-routes.MapRoute名称:SupplyChainPressureResult,url:supply chain pressure/ScptResult/{resultid},默认值:new{controller=SupplyChainPressure,action=ScptResult};您需要将该管线放置在默认管线之上。这有帮助吗?你所有的URL都是静态的,所以它们可能会在生产中中断