从直接URL重新分配到部分,除非从模态

时间:2016-04-12 16:48:08

标签: jquery asp.net-mvc

我在停止直接访问我的部分页面时遇到了一些麻烦。例如car$p[car$p>.05]<-NA aheatmap(as.matrix(cars[,1:2,drop=FALSE]),annRow =car[,"p",drop=FALSE], annColors="-Greens") 我不想访问或将它们返回Home/Create

我似乎无法在控制器中使用Home/Index属性,因为它会阻止部分出现在我使用jQuery的模式弹出窗口中。

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以检查请求是否是ajax请求,并根据该请求返回/重定向。在控制器aciton中使用Request.IsAjaxRequest()方法。

public ActionResult Create()
{
   if(Request.IsAjaxRequest())
   {
     // return partial view
      return PartialView("Create");
   }
   return RedirectToAction("Index");
}

在内部,此方法将检查请求标头并查找&#34; X-Requested-With&#34;头。当您的通话是ajax通话时,该值将为&#34; XMLHttpRequest&#34;

旁注 :Angualar http服务无法发送此标头by default。您需要明确启用它。

var app= angular.module('yourApp', []);

app.config(['$httpProvider', function ($httpProvider) {
    $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
}]);