2012-11-12 96 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; 
}   
}); 
相关问题