2012-05-09 56 views
0

在我的MVC應用程序中,我使用getJSON進行某些服務器調用。 但他們不工作。深深地埋在了jQuery 1.4.2庫中。對於e對象,username和密碼不存在。 但在$.getJson的文檔中,我看到沒有username和我應該照顧的密碼。 那麼下面的代碼有什麼問題?

var dataService = new function() { 
    $.ajaxSetup ({ 
     cache: false 
    }); 
     addBusinessUnit = function(employeeId, businessUnitId, callback) { 
      $.getJSON('<%= Url.Action("AddBusinessUnitForDepartmentAdministrator", "DataService")%>', 
       { employeeId: employeeId, businessUnitId: businessUnitId }, 
       function(data) { 
        callback(data); 
       }); 
     }, 
     deleteBusinessUnit = function(employeeId, businessUnitId, callback) { 
      $.getJSON('<%= Url.Action("DeleteBusinessUnitForDepartmentAdministrator", "DataService")%>', 
       { employeeId: employeeId, businessUnitId: businessUnitId }, 
       function(data) { 
        callback(data); 
       }); 
     }; 

    return { 
     addBusinessUnit: addBusinessUnit, 
     deleteBusinessUnit: deleteBusinessUnit 
    }; 

}(); 

編輯:

這是我的服務器端代碼。

public ActionResult AddBusinessUnitForDepartmentAdministrator(
     int employeeId, int businessUnitId) 
    { 
     var input = new DepartmentAdministratorExtraDepartment(employeeId, businessUnitId); 
     return new JsonResult 
        { 
         Data = input.AddNewPermission(), 
         JsonRequestBehavior = JsonRequestBehavior.AllowGet 
        }; 
    } 
+1

在_what?_您的服務器端代碼的文檔中? –

+1

您的服務器是否需要HTTP身份驗證? – blockhead

+0

在您打電話的操作中指定了哪些「角色」? –

回答

0

好的我找到了解決方案。我希望我再也不會犯這個錯誤!所有這一切都是因爲JS在它自己的文件中,因此Url.Action命令無法獲取頁面的上下文! 我不知道是否有可能在JS/Jquery中訪問一個頁面上下文對象,但無論如何,當我從頁面調用dataservice並且它工作時,我所做的只是放入一個Url參數中。