2014-12-02 68 views
-1

如何調用兩種不同的操作方法,基於在Ajax請求提供的參數,但URL應該是相同的 例如:調用兩個不同的動作有相同的URL

 public ActionResult Method1(int a) 
     { 

      return Json(true); 
     } 

     public ActionResult Method2(int b, int c) 
     { 
      return Json(true); 
     } 

樣品網址:/控制器/方法但提供的參數是不同的,所以相應的動作方法應該被調用

+0

使用的承諾,並等待他們倆是做任何事情之前完成。 – Johan 2014-12-02 07:06:33

+1

你的意思是_with AJAX calls_有相同的URL嗎?您需要與不同的網址進行2次不同的通話。例如'url:'@ Url.Action(「Method1」,「YourController」)''和'url:'@ Url.Action(「Method2」,「YourController」)',' – 2014-12-02 07:08:12

+0

有一種情況,只有一個URL說:/ MyController/MethodName – Mitesh 2014-12-02 07:10:49

回答

0

在你的JavaScript做ajax調用你可以做一個參數檢查,並從中決定網址。 類似的信息(僞代碼):

<script> 
function YourAjaxkCall(param1, param2, param3){ 
    string url; 
    if(param1 === someExpectedResult){ 
    url = '@Url.Action("Method1", "Controller")'; 
    data = param2; 
    } 
    if(param1 === someOtherExpectedResult){ 
    url = '@Url.Action("Method2", "Controller")'; 
    data = param2, param3 (Do proper converting to Json here) 
    } 
    'DoYourAjaxCall' 
} 

</script> 
相關問題