2013-02-22 45 views
0

我想調用JavaScript函數選定複選框計數,並且在該函數I必須調用用於呼叫一個語句控制器的的ActionResult方法,並執行一些功能的活動用戶和去激活用戶和在端如何在IIS下運行項目時從JavaScript調用控制器方法?

返回視圖()

這裏是我的代碼:

if (state == "Dec") { 
    alert("Hello..Dear..you are DeActive"); 
    $.post('@Url.Action("UserDeactive","Admin", new{})' + '?Id=' + strvalue); 
} 

此語句適用於正常的項目時,我通過壓運行項目F5,也使用本地主機VS。

但是,當我主持我的項目在IIS中,對於LAN訪問,這是不行的保持Java腳本調用,但這一說法不打電話,而不是瀏覽到行動結果的方法,..for做一些功能..! 所以請我...全部我親愛的..!如果你有任何想法。

這是我的控制器方法: -

public ActionResult UserActive(string Id) 
    { 

     int[] numbers = Id.Split(',').Select(n => int.Parse(n)).ToArray(); 


     if (numbers != null) 
     { 
      foreach (int id in numbers) 
      { 
       User_Master u_master = db.User_Masters.Find(id); 
       if (u_master.Is_active == "false") 
       { 
        u_master.Is_active = "true"; 
        db.Configuration.ValidateOnSaveEnabled = false; 
        db.SaveChanges(); 

       } 

      } 

     } 

     return RedirectToAction("Dashboard", "Home"); 

    } 

回答

1

使用$.post()方法,它允許您張貼額外的參數到服務器的第二個參數:

var url = '@Url.Action("UserDeactive", "Admin")'; 
$.post(url, { id: strvalue }, function(result) { 
    // handle the result of the AJAX call 
}); 
+0

先生......這種說法也我用過,但它不起作用...! – 2013-02-22 11:55:35

+1

這應該工作。如果沒有,那麼你還有其他問題。用FireBug檢查請求,你將能夠看到它失敗的原因。你也沒有在你的問題中指定,但爲了使用'@ Url.Action'助手,你需要把這個腳本放到你的視圖中,而不是在一個單獨的JavaScript文件中。是這樣嗎?控制器操作是否被調用?按我的複習題 – 2013-02-22 11:56:05

+0

sir..as是那裏當調用Java腳本,當調用在URL這種說法附加一些編碼ID..so什麼原因...因爲我strValue的是串並傳遞由ID來的ActionResult .., , – 2013-02-22 11:59:47

相關問題