2012-11-12 135 views
0

我正在使用MVC3。我有一個JavaScript函數,使ajax調用mvc3控制器操作。當我在數據中發送空值時,它會調用控制器操作。但是當我嘗試在數據中發送位置時,它會給出javascript錯誤,即'這是未定義的'。jquery ajax無法將數據發送到mvc3控制器操作

function getPictureContent(location) 
{ 
    var pictures = getLocationPictures(location); 
    var content = "<div id=markerpictures></div>"; 

    return content; 
} 

function getLocationPictures(location) { 
var pics; 
$.ajax({ 
    type : "POST", 
    url : "/Home/GetLocationPictures", 
    data : {'location' : location}, 
    contentType : "application/json; charset=utf-8", 
    dataType : 'json', 
    async : false, 
    success : function (data) {   
       pics = data; 
    }   
}); 

return pics;  
} 

這裏是控制器動作:

public JsonResult GetLocationPictures(string location) 
{ 
    List<string> pictures = new List<string>(); 
    return Json(pictures); 
} 
+1

你在'location'中發送了什麼?從你的錯誤,它看起來像你發送一個不是字符串的對象。 –

回答

0

試試這個..位置應該是string.Be確保將字符串。

function getLocationPictures(location) { 
var pics; 
$.ajax({ 
type : "POST", 
url : "/Home/GetLocationPictures", 
data : JSON.stringify({'location' : location}), 
contentType : "application/json; charset=utf-8", 
dataType : 'json', 
async : false, 
success : function (data) {   
      pics = data; 
}   
}); 
相關問題